C++ 初始化和比较向量c++;
我是新手。我有两个问题 首先,我尝试用以下格式初始化向量:C++ 初始化和比较向量c++;,c++,vector,constructor,compare,C++,Vector,Constructor,Compare,我是新手。我有两个问题 首先,我尝试用以下格式初始化向量: vector<string> v = {"plan", "man", "canal"}; 第二,守则的运作方式如下: 它接受输入并将其存储在向量中当输入终止时,for循环会比较两个向量,并根据向量元素是否匹配返回true或false 所以我的问题是:有没有更简单或更清晰的方法来写这个?因为如果没有匹配项,嵌套for循环只会打印两次单词。C++98没有initializer\u list或构造函数。为什么不使用当前的标准进
vector<string> v = {"plan", "man", "canal"};
第二,守则的运作方式如下:
它接受输入并将其存储在向量中
当输入终止时,for循环
会比较两个向量,并根据向量元素是否匹配返回true或false
所以我的问题是:有没有更简单或更清晰的方法来写这个?因为如果没有匹配项,嵌套for循环只会打印两次单词。C++98没有
initializer\u list
或构造函数。为什么不使用当前的标准进行编译呢?我已经尝试为我的文本编辑器sublime text获取当前的构建系统(c++14),但是我找不到它。我发现的那些不会在bash终端上构建,所以我决定暂时遵循它,而不是拖延学习。C++98和C++11之间的区别是巨大的。我强烈建议至少使用C++11。C++ 98的许多最佳实践已经过时了,甚至是错误的,因为C++ 11。@ NoNeSoTuTo这就是为什么我坚持学习C++ 98标准——所以你让一个Bug IDE和/或文本编辑器决定你将如何学习C++?嗅嗅我嗅到一个StruouToup挑战:)。我认为不喜欢的词需要是单独的字符串。假设这是第125页,如果我没记错的话,他在说明书中暗示了这一点。在这本书的早期阶段,他没有介绍任何访问向量元素的复杂方法。C++98没有初始值设定项列表
或构造函数。为什么不使用当前的标准进行编译呢?我已经尝试为我的文本编辑器sublime text获取当前的构建系统(c++14),但是我找不到它。我发现的那些不会在bash终端上构建,所以我决定暂时遵循它,而不是拖延学习。C++98和C++11之间的区别是巨大的。我强烈建议至少使用C++11。C++ 98的许多最佳实践已经过时了,甚至是错误的,因为C++ 11。@ NoNeSoTuTo这就是为什么我坚持学习C++ 98标准——所以你让一个Bug IDE和/或文本编辑器决定你将如何学习C++?嗅嗅我嗅到一个StruouToup挑战:)。我认为不喜欢的词需要是单独的字符串。假设这是第125页,如果我没记错的话,他在说明书中暗示了这一点。在这本书的早期阶段,他没有介绍任何访问向量元素的复杂方法。
#include "library/std_lib_facilities.h"
int main()
{
vector<string> disliked;
disliked.push_back("gin");
disliked.push_back("beer");
vector<string> words;
for(string word; cin >> word;)
words.push_back(word);
for(int i = 0; i < words.size(); ++i) {
bool match = false;
for(int x = 0; x < disliked.size(); ++x) {
if(disliked[x] == words[i])
match = true;
}
if(match)
cout << "BLEEP!!" << '\n';
else
cout << words[i] << '\n';
}
}