C++ 类的成员的初始化

原创 2012年03月24日 21:06:35

一、普通成员变量

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


二、静态成员变量

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


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

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

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;
};



C++类的静态成员初始化详细讲解

记住:通常静态数据成员在类声明中声明,在包含类方法的文件中初始化.初始化时使用作用域操作符来指出静态成员所属的类.但如果静态成员是整型或是枚举型const,则可以在类声明中初始化!!! 复制代码...
  • mengfanteng
  • mengfanteng
  • 2016年07月12日 16:11
  • 953

C++11中类数据成员初始化方法详解

C++98为类中提供类成员的初始化列表。 类对象的构造顺序是这样的:1.分配内存,调用构造函数时,隐式/显示的初始化各数据成员  2.进入构造函数后在构造函数中执行一般计算   1.类里面的任...
  • Bruce_0712
  • Bruce_0712
  • 2016年12月31日 21:28
  • 1281

C++类成员变量初始化位置

static: static表示的是静态的。类的静态成员函数、静态成员变量是和类相关的,而不是和类的具体对象相关的。即使没有具体对象,也能调用类的静态成员函数和成员变量。一般类的静态函数几乎...
  • st125475466
  • st125475466
  • 2015年09月08日 11:29
  • 898

C++类中成员变量初始化

C++类中成员变量包括主要四种: 普通成员变量,常量成员变量,静态成员变量,静态常量成员变量 上述成员变量该如何初始化,注意不是赋值。 由于普通成员变量和常量成员变量,每一个类实例化,都一份...
  • shixiaoguo90
  • shixiaoguo90
  • 2014年05月06日 10:18
  • 1059

C++类中成员变量的初始化总结

FROM: http://blog.csdn.net/gljseu/article/details/9750877 1、普通的变量:一般不考虑啥效率的情况下 可以在构造函数中进行赋值。考虑一下效率的...
  • gaoxuelin
  • gaoxuelin
  • 2013年08月05日 13:55
  • 10172

C++成员变量初始化顺序

1、成员变量在使用初始化列表初始化时,与构造函数中初始化成员列表的顺序无关,只与定义成员变量的顺序有关。因为成员变量的初始化次序是根据变量在内存中次序有关,而内存中的排列顺序早在编译期就根据变量的定义...
  • MM_dou
  • MM_dou
  • 2017年01月15日 14:47
  • 621

C++回顾之类数据成员的初始化

构造函数初始化列表,类中的普通对象成员初始化,const成员及引用成员的初始化方法。...
  • ab198604
  • ab198604
  • 2014年02月06日 14:46
  • 1424

C++ 类中的static成员的初始化和特点

C++ 类中的static成员的初始化和特点在C++的类中有些成员变量初始化和一般数据类型的成员变量有所不同。以下测试编译环境为:gcc version 5.4.0 20160609 (Ubuntu ...
  • men_wen
  • men_wen
  • 2017年03月21日 15:53
  • 823

C++必须使用【初始化列表】初始化数据成员的三种情况

类对象的构造顺序是这样的: 1.分配内存,调用构造函数时,隐式/显示的初始化各数据成员; 2.进入构造函数后在构造函数中执行一般赋值与计算。 使用初始化列表有两个原因: 原因1.必须这样做: ...
  • sinat_20265495
  • sinat_20265495
  • 2016年12月15日 15:13
  • 4264

类模版静态成员初始化

本对类模版中静态数据成员的初始化方式进行了详细介绍,对于不同静态成员讨论了初始化方式和一些实现细节。...
  • zjq2008wd
  • zjq2008wd
  • 2014年08月07日 14:51
  • 1621
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:C++ 类的成员的初始化
举报原因:
原因补充:

(最多只允许输入30个字)