码迷,mamicode.com
首页 > 编程语言 > 详细

C++中类的静态成员与实例成员的区别

时间:2017-11-10 20:30:58      阅读:216      评论:0      收藏:0      [点我收藏+]

标签:构造函数   静态成员   类的构造函数   程序   color   直接   操作   没有   操作符   

 在C++类中,由static定义的(静态)数据成员 和 (静态)函数成员属于类;相反没有被static定义的成员和函数称为实例数据成员和实例函数成员,他们属于某一个实例(对象)。

在内存中,类的静态数据成员占有一块特定的内存空间,被该类的所有实例(对象)共享。而同一个类的不同对象的实例数据成员相互独立,占有各自的存储空间。

定义类后,必须在类外的文件作用域中定义静态数据成员,即为它们分配存储空间。

在程序中可以直接使用类名和域解析操作符::直接访问类的共有静态数据成员和共有函数成员,不能直接访问类的私有成员。

不能在类的构造函数中初始化静态数据成员,因为静态数据成员不属于某一个具体的类。

在类的静态函数成员中,只能访问类的静态数据成员,而不能访问类的实例数据成员,因为在调用静态函数成员时,可能还没有创建类的具体实例(对象)。

C++中类的静态成员与实例成员的区别

标签:构造函数   静态成员   类的构造函数   程序   color   直接   操作   没有   操作符   

原文地址:http://www.cnblogs.com/hubers/p/7816015.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!