const 修饰类的数据成员的语义分析
来源:互联网 发布:freebsd和mac 编辑:程序博客网 时间:2024/05/29 11:38
class A
{
const int size;
…
}
const数据成员只在某个对象生存期内是常量,而对于整个类而言却是可变的。
因为类可以创建多个对象,不同的对象其const数据成员的值可以不同。
所以不能在类声明中初始化const数据成员,因为类的对象未被创建时,编译器不知道const 数据成员的值是什么
。如
class A{
const int size = 100; //错误
int array[size]; //错误,未知的size
}
const数据成员的初始化只能在类的构造函数的初始化表中进行。
要想建立在整个类中都恒定的常量,应该用类中的枚举常量来实现。如
class A{…
enum {size1=100, size2 = 200 };
int array1[size1];
int array2[size2];
}
枚举常量不会占用对象的存储空间,他们在编译时被全部求值。但是枚举常量的隐含数据类型是整数,其最大值有限,且不能表示浮点数。
0 0
- const 修饰类的数据成员的语义分析
- static和const修饰的类成员
- static和const修饰的类成员
- const修饰的类成员函数
- 用const修饰的类成员
- static和const修饰的类成员
- 类成员的const, static修饰
- const修饰类的成员函数
- const修饰类的成员函数
- const修饰类的成员函数
- const修饰类的成员函数
- const修饰类的成员函数
- const修饰的成员函数
- const 之 const修饰的成员函数
- 类的const数据成员
- static修饰类数据成员 与 static const数据成员
- const 修饰的常函数成员
- C++ const 修饰的对象成员
- 传iWatch 将在7月投入生产,10月出货,支持无线充电、触控、测量脉搏
- 简易Spring
- Android多媒体开发【12】-- android中OpenMax的实现【3】OMX中主要成员
- mysqldump的流程
- OCP 1Z0 052 168
- const 修饰类的数据成员的语义分析
- MPU6050的一些问题及解决办法
- Android文本的测量和绘制
- 利用数组元素交换技术来实现界面的翻页滑动效果
- Jade - 模板引擎
- Builder Pattern In Android
- jquery----TextArea高度自适应
- ARM Cortex 架构简介
- Uibutton 左对齐