我正在尝试制作一个包含2个字符串列表的数组数组(一个单数和一个复数)。
string item_name[2][6];
string item_name[0] = {"bag of CinnaCandies", "can of Arizona Tea", "Starbucks Mocha Frappe", "copy of Section 8: Prejudice", "Sushi Box", "pair of Nike Jordans"};
string item_name[1] = {"bags of CinnaCandies", "cans of Arizona Tea", "Starbucks Mocha Frappes", "copies of Section 8: Prejudice", "Sushi Boxes", "pairs of Nike Jordans"};
我不知道执行此操作的正确语法,我想将其保存为2个数组的数组,因此我可以使用以下代码:
if (quantity > 1)
{
cout << item_name[0][index];
}
else
{
cout << item_name[1][index];
}
感谢。 :)
答案 0 :(得分:6)
你走在正确的轨道上。您只需要一个声明,并嵌套括号,以便您有一个数组数组:
string item_name[2][6] = {{"bag of CinnaCandies", "can of Arizona Tea",
"Starbucks Mocha Frappe", "copy of Section 8: Prejudice",
"Sushi Box", "pair of Nike Jordans"},
{"bags of CinnaCandies", "cans of Arizona Tea",
"Starbucks Mocha Frappes",
"copies of Section 8: Prejudice", "Sushi Boxes",
"pairs of Nike Jordans"}};
答案 1 :(得分:2)
正常初始化,但不使用常规常量,而是使用子数组:
string item_name[2][6] = {
{"bag of CinnaCandies", "can of Arizona Tea", "Starbucks Mocha Frappe", "copy of Section 8: Prejudice", "Sushi Box", "pair of Nike Jordans"},
{"bags of CinnaCandies", "cans of Arizona Tea", "Starbucks Mocha Frappes", "copies of Section 8: Prejudice", "Sushi Boxes", "pairs of Nike Jordans"}
};
答案 2 :(得分:2)
上述两个答案都是正确的。此外,您还可以使用以下内容:
vector<string> item_name[2];
这样,您仍然拥有一个“数组”数组,但子数组大小不固定,因此您可以继续追加任意数量的条目。
当然,您也可以使用符号
item_name[0][index];
获取第一个顶级数组的“index”项。