c++ - 将攻击性句子列入黑名单

标签 c++ templates vector

我创建了一款适合年轻观众的游戏,并试图过滤掉亵渎和冒犯性的名字

#include <iostream>
#include <vector>

bool isBanned( std::string text ) {
    std::vector bannedSent = {
        "Profanity1",
        "Profanity2",
        "Profanity3",
        "Profanity4"
    };
    for(auto &i : bannedSent) {
        if(text == i) { return true; }
    }
    return false;
}

我在 std::vector 行中遇到有关“模板参数”的编译器错误,这是什么意思?

最佳答案

您需要为 vector 提供模板参数。由于您持有字符串,因此需要这样声明:

std::vector< std::string > bannedSent = {
   "Gosh",
   "Golly",
   "Jeepers",
   "Troll"
};

关于c++ - 将攻击性句子列入黑名单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35856659/

相关文章:

c++ - 使用相同的 Boost.Asio io_service 同步接受 tcp 连接并作为线程池

c++ - 如果函数具有相同的名称,如何调用构造函数

c++ - 没有匹配函数调用 'AnimationSet::AnimationSet()'

c++ - 无法获取模板函数的函数指针 - templateception

c++ - 从另一个模板结构继承的模板结构

c++ 从文本文件中删除行(需要解释)

django - Django 中的 'article_set' 来自哪里?

Java Vector<int[]> int[] 的引用还是复制?

c++ - 通过迭代器打印 vector 的大小

c++ - 如果我有一个指向 vector 的指针,插入会使它无效吗