首页 > 编程语言 > 详细

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

时间:2017-11-10 19:22:23      阅读:279      评论:0      收藏:0      [点我收藏+]

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

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

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

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

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

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

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

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

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!