为什么我不能向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;
我做错了什么?
答案 0 :(得分:0)
与某些容器(例如std::map
)不同,std::vector
不会按需增长。
因此,在索引元素之前,您需要确保std::vector
具有适当的大小。你可以通过在构造上传递一个尺寸来做到这一点。
在您的情况下,您可以使用华丽的语法
std::vector < std::vector <std::string> > my_list{{"this is a test"}};
让事情顺利进行。