2013年6月26日
摘要: 以下内容主要来自于C++ Primer中文版第四版12.6节。对于一个已经定义的类,有的时候需要定义这个类的一个全局对象来获取或管理全体类对象的相关信息,比如统计所有类对象的数量。但是全局对象会带来问题:全局对象可被用户随意修改,破坏了封装性。因而常常用类静态成员来代替全局对象。通常,非static数据成员存在于类类型的每个对象中,而static数据成员独立于该类的任意对象而独立存在;每个static数据成员是与类关联的对象,而不与类对象关联。类也可以定义static成员函数,static成员函数没有this形参,它可以直接访问类的static成员,但不能直接访问非static成员。(1)使用 阅读全文
posted @ 2013-06-26 22:03 Sophia-呵呵小猪 阅读(256) 评论(0) 推荐(0) 编辑
摘要: 友元允许特定的非成员函数能够访问一个类的私有成员,同时阻止一般的访问。通过友元机制,一个类可以将对其非公有成员的访问权授予指定的函数或类。友元的声明以关键字friend开始,只能出现在类定义的内部,但可以出现在类中的任何地方,但通常将友元声明成组地放在类定义的开始或结尾。友元可以是其他的类,普通的非成员函数或其他类的成员函数,下面分别简要介绍。(1)类作为友元如果将一个类B声明为另一个类A的友元,那么这个友元类B的成员就可以直接访问A的私有成员,声明的格式如下:class A{ friend class B;}(2)类的成员函数作为友元如果不是将整个类设为友元,而是将某个类B的成员函数设... 阅读全文
posted @ 2013-06-26 14:08 Sophia-呵呵小猪 阅读(217) 评论(0) 推荐(0) 编辑