C++ 如何创建字符串的全局数组?
如何创建字符串的全局数组?我尝试在main之外声明一个字符串,并使用C++ 如何创建字符串的全局数组?,c++,C++,如何创建字符串的全局数组?我尝试在main之外声明一个字符串,并使用myString=newstring[5]动态初始化它,但我在Xcode中收到错误“没有可行的重载“=”。我做错了什么?这是你想要的吗 char const *myStrings[] = { "Some", "Strings" }; 您是否确保myStrings是一个指针,即string*myStrings不是string myStrings您的代码片段有点简洁,但如果您的完整声明是 string myStri
myString=newstring[5]动态初始化它代码>,但我在Xcode中收到错误“没有可行的重载“=”。我做错了什么?这是你想要的吗
char const *myStrings[] = {
"Some",
"Strings"
};
您是否确保myStrings
是一个指针,即string*myStrings
不是string myStrings
您的代码片段有点简洁,但如果您的完整声明是
string myString = new string[5];
然后问题是,您试图将一个字符串数组分配给一个变量,该变量只设计用于保存一个特定字符串。你会想做的
string *myStrings = new string[5];
其中全局变量包含指向数组中第一个字符串的指针——或
其中全局变量是数组。需要使用大括号符号来初始化数组:
std::string myString[5] =
{
"string1",
"string2",
"string3",
"string4",
"string5"
};
如果您只是试图声明和分配它,您所需要的只是:
std::string* myString = new std::string[5];
或者更好的是,vector mystring这是在编译时存储关键字列表的最简单的解决方案。
std::string* myString = new std::string[5];