【发布时间】:2018-09-26 20:10:14
【问题描述】:
我目前正在使用 C++ 进行编码,并且对它相当陌生。我遇到了将字符串数组的元素转换为变量的问题。 cout 语句 dcity[selection-1] 按预期工作。但是,我无法将 dcity[selection-1] 存储到名为 departmentLocation 的变量中。 Visual Studios 给我一个错误,即没有合适的从字符串到字符的转换函数。有人对如何正确存储这个有建议吗?谢谢!
int main()
{
int selection = 0;
char departureLocation;
std::string dcity[] = { "Seattle Detroit Seattle Chicago Houston Seattle" };
std::cout << "Please choose a number from the list";
std::cin >> selection;
std::cout << dcity[selection-1];
departureLocation=dcity[selection-1]
};
【问题讨论】:
-
你想要一个字符串向量。
-
@NeilButterworth 代码中没有证据表明
std::vector比数组更适合预期目的。 -
我真的很喜欢您尝试一次编写程序的方式,而不是一次编写所有程序。只是不要陷入认为因为你的程序编译它就会工作的陷阱。编写一小段代码,让它编译、测试并修复任何错误。然后才重复。
-
@Swordfish 向量几乎总是比数组更可取,因为它们随身携带它们的大小,因此可以很容易地作为函数参数传递。
-
@NeilButterworth 由于可以离开的城市数组在运行时不太可能发生变化,我宁愿建议
std::array<std::string>或 ``std::array`。