内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用
如何实现静态数组初始化的动态等效:
char c[2] = {}; // Sets all members to '\0';
换句话说,创建一个动态数组,将所有值初始化为终止字符:
char* c = new char[length]; // how do i amend this?
有两种方式:
char *c = new char[length]; std::fill(c, c + length, INITIAL_VALUE); // just this once, since it's char, you could use memset
或:
std::vector<char> c(length, INITIAL_VALUE);
在我的第二种方法中,默认的第二个参数已经是0了,所以在例子中没有必要:
std::vector<char> c(length);