开发者社区> 问答> 正文

linux g++编译器处理枚举类型的问题

简易代码如下

 #include <iostream>
enum MyEnum
{
    F = 0,
    T = 1
};

bool juge(MyEnum x)
{
    if (x == MyEnum::F)
    {
        return false;
    }
    else
    {
        return true;
    }
}

int main(int argc, char** argv)
{
    MyEnum x = MyEnum::T;
    if (juge(x))
    {
        std::cout << "true" << std::endl;
    }
    else
    {
        std::cout << "false" << std::endl;
    }
    return 0;
}

screenshot;

展开
收起
小旋风柴进 2016-06-03 09:17:13 2090 0
1 条回答
写回答
取消 提交回答
  • C++中的枚举直接作为常量使用

    enum MyEnum
    {
    F = 0,
    T = 1
    };
    
    判断直接使用
    if(X==F)
    
    而MyEnum::F这种使用为当这个枚举被命名空间作用才可以
    例如
    namespace MyEnum
    {
    enum TESTEnum
    {
    F = 0,
    T = 1
    };
    2019-07-17 19:25:52
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
Alibaba Cloud Linux 3 发布 立即下载
ECS系统指南之Linux系统诊断 立即下载
ECS运维指南 之 Linux系统诊断 立即下载