关闭

C++ 类的成员的初始化

223人阅读 评论(0) 收藏 举报

一、普通成员变量

普通成员变量,不能在类声明中初始化。


二、静态成员变量

即类成员变量。这种变量也不能在类声明中初始化。


三、静态常量整型数据成员

静态常量整型数据成员可以在类的声明中初始化,而且只有这种变量可以在类的声明中定义。

class Base
{
public:
	Base(){};
private:
	int a;
	int b;
	static const int sc_int = 10; //static const
};
第二点说的静态成员变量不可以在类声明中初始化,常量整型也不可以。只有静态常量整型成员才可以在类声明中初始化,这与Java不同,需要特别注意。


四、非静态的常量如何初始化?

只能在构造函数的初始化列表中初始化。

class Base
{
public:
	Base():basec(10)  // 在初始化列表初始化basec的值
	{
		//basec = 10; // const变量,不能赋值
	}	
private:
	int a;
	int b;
	const int basec;
};



0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:190332次
    • 积分:2443
    • 等级:
    • 排名:第15673名
    • 原创:70篇
    • 转载:35篇
    • 译文:0篇
    • 评论:8条
    最新评论