在C++中初始化已声明的char数组

Cha*_*own 3 c++

我想用这样的东西:

char theArray[]=new char[8];
theArray= { 1,2,3,4,5,6,7,8};
Run Code Online (Sandbox Code Playgroud)

代替

char theArray[] = { 1,2,3,4,5,6,7,8};
Run Code Online (Sandbox Code Playgroud)

类似的事情可能吗?

erj*_*jot 6

的C++ 0x

char* ch;
ch = new char[8]{1, 2, 3, 4, 5, 6, 7, 8};
Run Code Online (Sandbox Code Playgroud)

@David Thornley:然后切换这些线,没有问题.而且你真的在谈论char[8]在与前一个值相同的内存池中重新分配,那么你需要使用自己的分配器,例如:

char* ch1 = new char[8]{'a', 'b', 'c', 'd', 'e', 'f', 'g', 'i'};
char* ch2 = new(ch1) char[8]{1, 2, 3, 4, 5, 6, 7, 8};
Run Code Online (Sandbox Code Playgroud)

afaik OP不太可能需要.