[导入]类的一些特殊限制成员

inline成员函数:声明或定义时指定为inline都可以。作用:在调用处直接在行内展开代码,以提高效率。类的inline成员函数定义在包含该类的头文件中。 类内部定义的函数均为inline函数。

mutable数据成员:任何函数(包括类const成员函数)都可以修改mutable数据成员。

explicit构造函数:声明时指定,定义时不允许重复指定为explicit。作用:防止在需要隐式转换的上下文中使用构造函数。

friend成员:非类成员可以访问类的私有成员。需要特别注意友元声明和作用域。如果想将(其他类的)成员函数设为友元,必须先声明;而如果想将(其他)类或非成员函数设为友元,则不必预先声明。

static数据成员:static数据成员不用构造函数,在类的外部定义,定义时进行初始化。

static成员函数:声明时指定static类型,定义时不用重复声明。没有this指针。

const static数据成员:一般地类的static数据成员不能在类的内部定义。有例外就是可以用常量表达式初始化const static数据成员,不过即使这样也需要在类定义体的外部进行该const static数据成员的定义。

static成员不是类对象的组成部分,非static数据成员不能是该成员所属的类类型,而只能是对应的指针和引用,而static成员则可以是该成员所属的类类型。
文章来源:http://liyuxia-life.spaces.live.com/Blog/cns!DA1B364675ACF35!252.entry



幸运草 2009-03-06 21:57 发表评论
原文地址:https://www.cnblogs.com/liyuxia713/p/2540808.html