数组等效的Bare-String

时间:2015-04-01 15:32:08

标签: c++ arrays string initializer-list bare

我可以毫无问题地执行此操作:

const char* foo = "This is a bare-string";

我想要的是能够用数组做同样的事情:

const int* bar = {1, 2, 3};

显然代码没有编译,但是有某种类型的数组等同于裸字符串吗?

1 个答案:

答案 0 :(得分:1)

你不能这样做:

const int* bar = {1, 2, 3};

但你可以这样做:

const int bar[] = {1, 2, 3};

原因是C(或C ++)中的char *具有附加功能,除了作为char指针工作外,它还可以作为“C字符串”使用,因此添加了初始化方法(特殊于char *):

const char* foo = "This is bare-string";

最佳。