首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何同时使用set和enum?

如何同时使用set和enum?
EN

Stack Overflow用户
提问于 2018-08-02 03:37:12
回答 1查看 211关注 0票数 -1

我刚开始用c++编写代码。我的第一个任务是创建一组枚举,并使用枚举值作为每个字符串值的键在set中传递字符串值。我不知道该怎么做。

我最好的猜测是。

代码语言:javascript
复制
typedef enum sendDataElements
{
    Data1,
    Data2,
    Data3,
    Data4,
}
std::set<string, sendDataElements> m_modules;
m_modules.insert(message, Data1);

但是不能编译。请帮帮忙。

EN

回答 1

Stack Overflow用户

发布于 2018-08-02 03:58:39

代码语言:javascript
复制
#include <map>

int main()
{
    enum SendDataElements
    {
        SEND_DATA_1,
        SEND_DATA_2,
        SEND_DATA_3,
        SEND_DATA_4,
    };

    std::map<std::string, SendDataElements> modules;
    modules["poop"] = SEND_DATA_1;
}

正如其他人在原始问题的注释中所说的那样,std::set只接受键,而您正在尝试存储键和值。您可能正在寻找使用地图。我还更新了枚举的样式。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51641103

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档