以下几种方式初始化字符串有什么区别?
string s = "Hello World";
和
string s[] = {"Hello World"};
据我了解,前者是一个类(class)?后者是一个数组?此外,除了这两种方式之外,还有其他方式吗?
最佳答案
在第一个示例中,您定义了一个类 string
的对象。
在第二个中,您声明了一个未定义长度的字符串数组(由编译器计算,基于您在初始化列表中定义的对象数量)并使用“Hello World”初始化一个 string
对象。因此,您创建了一个大小为 1 的数组。
string s = "Hello World";
string s2[] = {"Hello World"};
在此之后,s
和 s2[0]
包含其中包含相同字符的字符串。
关于c++ - C++中字符串的初始化方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34290269/