C+中的向量比较+;无集合交点或集合差 只是初学者学习C++。这是一门很棒的语言,学习曲线很陡,我正在攀登这座山

C+中的向量比较+;无集合交点或集合差 只是初学者学习C++。这是一门很棒的语言,学习曲线很陡,我正在攀登这座山,c++,vector,comparison,C++,Vector,Comparison,目前,我想比较两个向量,第一个向量已经有预定义的元素,而另一个向量的元素是在运行中输入的(即“while循环中的cin”)。向量比较的输出应该是字符串“bleep”,只要两个排序向量之间匹配相似的字符串。否则,输入单词的向量将打印出它的元素 旁注:代码有点宗教色彩(我决定使用我知道的标准文本——圣经)。所以我并不是要谴责任何人,我只是需要一个我们都能接触到的标准文本。此外,我在网上搜索了一些关于比较向量的建议,这些建议需要我使用set_difference、set_intersection等。我

目前,我想比较两个向量,第一个向量已经有预定义的元素,而另一个向量的元素是在运行中输入的(即“while循环中的cin”)。向量比较的输出应该是字符串“bleep”,只要两个排序向量之间匹配相似的字符串。否则,输入单词的向量将打印出它的元素

旁注:代码有点宗教色彩(我决定使用我知道的标准文本——圣经)。所以我并不是要谴责任何人,我只是需要一个我们都能接触到的标准文本。此外,我在网上搜索了一些关于比较向量的建议,这些建议需要我使用set_difference、set_intersection等。我已经检查了它们,但我意识到像我这样的新手需要更多的时间来理解interator语法。这就是我来这里的原因

因此,我需要您的帮助,因为代码在实现文件中不断给出此错误:

我知道。我希望我能解决这个错误(错误实际上是我正在阅读的书的下一章的主题)

所以,我一直在编写的代码就到此为止了。任何指点都将不胜感激。提前感谢:)

#包括“stdafx.h”
#包括“Std_lib_facilities.h”
int main()
{
//导言

cout您不喜欢的向量
长度为0个元素,因此您将分配给不存在的元素

std::vector::operator[]
不会更改容器的大小;它只会获取对已存在元素的引用。若要将元素添加到向量的末尾,需要使用
push_back

vector<string> disliked;
disliked.push_back("hatred");
...

请将错误消息作为文本包含在问题中。图像质量相当差,无论如何错误和代码应该是文本而不是图像。这一技巧甚至在调试之前就可以帮助您:写一行,编译,修复错误,然后再写下一行。代码中的问题在main的第2行,其余的与此无关…旁白:更多建议阅读:感谢用户463035818的建议。我将开始逐行测试代码。我能够使用下面的Miles Budnek建议初始化向量元素。关于图像质量,我还将在下次在我的电脑上看起来很好时上传一个更好的,所以我不需要麻烦。感谢UKMonkey在命名空间上发布的链接。我会的当我了解这一点时,请遵守您的建议。干杯。非常感谢。您的建议在向量初始化方面确实帮助了我。我现在正在进行比较。再次干杯,上帝保佑。
vector<string> disliked;
disliked.push_back("hatred");
...
vector<string> disliked(22);
disliked[0] = "hatred";
...
vector<string> disliked = {
    "hatred",
    ...
};