类内部的 static、const、enum 变量
发布日期:2021-11-13 02:34:57
浏览次数:4
分类:技术文章
本文共 558 字,大约阅读时间需要 1 分钟。
1. 只有当成员变量为static const 时,才可以在声明时直接定义,如下:
class X
{
public:
static const m_n = 100;
}
当然也可以将声明与定义分开,如下:
class X
{
public:
static const m_n;
}
// cpp文件
const int X::m_n = 100;
2.当成员变量为const时,只有在构造函数时,通过初始化列表初始化,如下:
class X
{
public:
X();
private:
const m;
const n;
}
//cpp
X::X(...):M(xx), n(oo)
{
}
3.当遇到在类内声明的常量,在类定义期间还需要使用,而此时该常量还未定义(赋值),比如,数组的长度,该如何解决?可使用枚举,如下:
// 错误 编译不过
class X
{
public:
X();
private:
const length = 10; // error 原因见条目2
char buf[length];
}
// 解决办法
class X
{
public:
X();
private:
enum {length = 10};
char buf[length];
}
利用枚举值可当做整型使用的特点
转载地址:https://blog.csdn.net/johnice/article/details/5425465 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
不错!
[***.144.177.141]2024年04月05日 17时33分15秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
分布式锁系列--04关于分布式锁的选型分析02-Redlock的实现原理
2019-04-27
分布式事务系列--SpringCloud整合byteTCC框架0.4.x版本
2019-04-27
分布式事务系列--SpringCloud整合byteTCC框架0.5.x版本2
2019-04-27
kafka安装教程
2019-04-27
Consul相关资料
2019-04-27
mysql大于号小于号写法
2019-04-27
注册中心技术选型分析
2019-04-27
In aggregated query without GROUP BY...this is incompatible with sql_mode=only_full_group_by
2019-04-27
分布式事务系列--是选TCC还是SAGA
2019-04-27
mysql表字段值处理回车符换行符
2019-04-27
分布式事务系列--分布式跨库查询解决方案 mysql federated引擎的使用
2019-04-27
聊聊分布式
2019-04-27
(11)SpringBoot整合EhCache做缓存
2019-04-27
(15)SpringBoot使用Junit单元测试
2019-04-27
(13)SpringBoot使用poi上传excel文件
2019-04-27
(10)SpringBoot创建定时任务
2019-04-27
(9)SpringBoot使用JdbcTemplate访问数据库
2019-04-27
(16)SpringBoot整合RabbitMQ
2019-04-27
(12)SpringBoot使用Thymeleaf开发web页面
2019-04-27
(14)SpringBoot使用AOP
2019-04-27