<分区>
为什么我不能向 vector 添加项目:
std::vector < std::vector <std::string> > my_list;
my_list[0][0] = "this is text";
std::cout << "text: " << my_list[0][0] << std::endl;
我做错了什么?
<分区>
为什么我不能向 vector 添加项目:
std::vector < std::vector <std::string> > my_list;
my_list[0][0] = "this is text";
std::cout << "text: " << my_list[0][0] << std::endl;
我做错了什么?
最佳答案
与某些容器(例如 std::map
)不同,std::vector
不会按需增长。
因此,在索引元素之前,您需要确保 std::vector
具有合适的大小。您可以通过传递构造尺寸来做到这一点。
在您的情况下,您可以使用华而不实的语法
std::vector < std::vector <std::string> > my_list{{"this is a test"}};
让事情顺利进行。
关于c++ - 我无法将项目添加到 ( std::vector < std::vector <std::string>> ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47694540/