前言

枚举在C++有两种形式,enum和enum class,enum是C++11之前的写法,也就是无范围枚举,enum class是C++11引入的,既有范围的枚举。

前置声明

无范围枚举

// A.h
enum Type : unsigned int; // Forward declarationclass A {public:A();~A();Type mType;
};// A.cpp
#include "A.h"
#include "B.h"
...// B.h
enum Type : unsigned int
{TEST_TYPE_A,TEST_TYPE_B
};class B {public:B();~B();
};

有范围枚举

// A.h
enum class Type : unsigned int; // Forward declarationclass A {public:A();~A();Type mType;
};// A.cpp
#include "A.h"
#include "B.h"
...// B.h
enum class Type : unsigned int
{TEST_TYPE_A,TEST_TYPE_B
};class B {public:B();~B();
};

参考文献

https://en.cppreference.com/w/cpp/language/enum

C++ enum前置声明相关推荐

  1. C++中前置声明介绍

    前置声明是指对类.函数.模板或者结构体进行声明,仅仅是声明,不包含相关具体的定义.在很多场合我们可以用前置声明来代替#include语句. 类的前置声明只是告诉编译器这是一个类型,但无法告知类型的大小 ...

  2. c++ using 前置声明_C++ 类的前置声明

    今天在研究C++"接口与实现分离"的时候遇到了一个问题,看似很小,然后背后的东西确值得让人深思!感觉在学习的过程中有太多的为什么,而每一个为什么背后都隐藏着一些原理和目的,所以得多 ...

  3. 使用类前置声明的好处-结合Qt 4一个主窗口实例讲解

    本实例实现一个基本的主窗口程序,包含一个菜单条.一个工具栏.中央可编辑窗体及状态栏. 主窗口头文件代码如下: 1 #ifndef MAINWINDOW_H 2 #define MAINWINDOW_H ...

  4. C/C++之类的前置声明

    C++中将"接口与实现分离"的两个重要目的就是"降低文件间的编译依存关系"和"隐藏对象的实现细节".而实现这一目的的关键技术就是Pimpl模 ...

  5. c++ using 前置声明_C++ 类声明 类前置声明范例

    在编写C++程序的时候,偶尔需要用到前置声明(Forward declaration).下面的程序中,带注释的那行就是类B的前置说明.这是必须的,因为类A中用到了类B,而类B的声明出现在类A的后面.如 ...

  6. c/c++ 前置声明 -- typedef问题

    前几天写过前置声明的问题,不过今天写代码时又遇到了同样的问题,不过是一个typedef出来的问题. 前置声明的好处很多, 比如能避免头文件互相包含的冲突, 比如有时我们在一个头文件中只需要另一个头文件 ...

  7. c++ 之类的前置声明

    转自:http://blog.csdn.net/fjb2080/archive/2010/04/27/5533514.aspx 作者:清林,博客名:飞空静渡 刚开始学习c++的人都会遇到这样的问题: ...

  8. c++ using 前置声明_详解C++ 前置声明

    前置声明是C/C++开发中比较常用的技巧,主要用在三种情形: 变量/常量,例如extern int var1;; 函数,例如void foo();,注意类的成员函数无法单独做前置声明: 类,例如cla ...

  9. C++前置声明的一个好处与用法

    2019独角兽企业重金招聘Python工程师标准>>> 在C++ GUI Qt编程中有下面的一个头文件: #ifndef FINDDIALOG_H #define FINDDIALO ...

最新文章

  1. 西北农林科技大学与陕西师范大学计算机,这所大学有点“惨”,本身是“双一流”高校,却被说成野鸡大学...
  2. 堆栈溢出从入门到提高
  3. Leetcode每日一题:24.swap-nodes-in-pairs(两两交换链表中的节点)
  4. Purism释出Librem 5智能型手机新进展
  5. Ubuntu之sshfs远程目录挂载到本地
  6. 鸿蒙os开机时间,再见了安卓!华为鸿蒙OS 2.0正式登场,开机只需19秒
  7. Ubuntu20安装gcc11
  8. Source Insight 4.0黑色仿IDEA主题
  9. web学习6-jdom
  10. EDU教育网邮箱申请注册享受Apple、微软、Github等产品教育优惠附带各优惠申请教程
  11. excel宏教程_Excel做的带动态备忘录的2020年日历,简单到没朋友!
  12. 攒机笔记十九:手机tf卡(microSD)
  13. 设计之美 --大道至简
  14. c# ListView增加条目
  15. linux grep本地ip,linux grep怎么查ip地址
  16. html恶搞之无限弹窗
  17. GMM的EM算法实现
  18. 常用的git命令,基本工作够用了
  19. (申请加精)你所不知道的奶粉秘密(2)------转自天涯
  20. OA选型时所产生的一些误区

热门文章

  1. 新版股票api接口大全
  2. Lucene .Net + 盘古分词 学习资料
  3. [渝粤教育] 西北工业大学 复变函数与积分变换 参考 资料
  4. 天大博士/硕士学位论文Latex模板2021年
  5. html中JSON格式化输出
  6. 古文选读161篇--蔡礼旭老师选
  7. 三维星座图查询_微信我的三维星座图测试游戏
  8. CSR867x — 如何看懂一份psr文件
  9. 什么是“ Windows任务的主机进程”,为什么我的PC上运行着这么多主机?
  10. 王兴的190条程序员技术人生的思考!