如何将字符插入集合?

时间:2017-01-25 20:33:17

标签: c++ c++11

我有一个以菜单开头的小游戏,玩家可以选择6个选项。播放器的决定将使用cin写入char变量。这很好用,游戏从选项开始。 但是当玩家输入另一个值然后游戏出错时,游戏也会启动。 为了解决这个问题,我想使用带有可能选项的字符集。但是在每一种方式我尝试将值插入到set变量中我都会遇到编译器错误。

当我尝试初始化set时声明我得到了"' a'未在此范围内宣布"

set <char> Options {a,b};

如果我这样尝试,&#34;没有匹配函数来调用&#39; std :: set :: insert(const char [2])&#39; |&#34;

set <char> Options {"a","b"};

当我这样做的时候,我也会得到&#34;&#39; a&#39;未在此范围内宣布&#34;

set <char> Options;

int main()

Options.insert(a);

我也尝试了这个,但是我再次得到&#34;没有匹配函数来调用&#39; std :: set :: insert(const char [2])&#39;&# 34;

set <char> Options;

int main()

Options.insert("a");

所以现在我很困惑。使用整数我没有问题,但是当我尝试将它与字符一起使用时,我没有让它工作。

有人可以帮忙吗?

(这是我的第一个问题,我希望它能很好地制定)

1 个答案:

答案 0 :(得分:5)

字符文字拼写为撇号:

set<char> Options {'a', 'b'};
//                 ^^^  ^^^