How could I initialize a two dimensional char pointer in C++ class -


class tool { public:     tool();     ~tool();  private:     char **s; };  char *s1[]={"hello","world"}; 

how can initialize s , make same s1?

s={"hello","world"} 

doesn't seem work.

while use std::vector<std::string>, feel it's more beneficial directly answer question.

char** s pointer pointer; possibly pointer first pointer in array of pointers.

char* s1[] array of pointers const data (and should have been made const).

if want s work s1, first need allocate array of pointers, reason std::vector recommended others. new, have release allocated memory @ point. using new directly prone leaks. std::vector release allocated memory when object destructed. call delete[] in destructor if wanted to.

when array has been allocated, need std::copy array of pointers in s1 array of pointers in s. it's not single assign operation.


Comments

Popular posts from this blog

How can we post XML strings along with text strings in iOS -

How to run C# code using mono without Xamarin in Android? -

c# - cefsharp app remember password option -