我有点尴尬,这么简单的问题却困扰了我,但经过几个小时毫无结果的谷歌搜索后,我仍然陷入困境。
为了简化我的问题,第二行崩溃了:
vector<vector<string> > sorted_words;
sorted_words[0].push_back("hello");
不应该sorted_words[0]
代表一个我可以合法push_back的空向量?
不,你有一个向量的向量。您还没有在第 2 行向这两个向量中添加任何内容,因此sorted_words[0]
,第一个元素sorted_words
,尚不存在。
你正试图推动"hello"
变成空值vector
.
空指针取消引用!
我会问“你真的想要一个向量的向量,还是只是一个字符串的向量”?
如果您想要一个字符串向量,请使用:
vector<string> sorted_words;
sorted_words.push_back("hello");
如果您确实想要一个(字符串)向量的向量,请使用:
vector<string> first_vector;
first_vector.push_back("hello");
sorted_words.push_back(first_vector);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)