摘要:
友元可以是一个函数,该函数被称为友元函数;友元也可以是一个类,该类被称为友元类。问题的提出 我们已知道类具有封装和信息隐藏的特性。只有类的成员函数才能访问类的私有成员,程序中的其他函数是无法访问私有成员的。非成员函数可以访问类中的公有成员,但是如果将数据成员都定义为公有的,这又破坏了隐藏的特性。另外,应该看到在某些情况下,特别是在对某些成员函数多次调用时,由于参数传递,类型检查和安全性检查等都需要时间开销,而影响程序的运行效率。 为了解决上述问题,提出一种使用友元的方案。友元是一种定义在类外部的普通函数或类,但它需要在类体内进行说明,为了与该类的成员函数加以区别,在说明时前面加以关键字fr.. 阅读全文
摘要:
突然有人问起C++继承,一段时间不用就忘记了,所以记下来.而且也看到都不知道的一些新鲜东西.工作后一直是public,所以一直以为类的继承是默认公有继承的,而且认为这样子更加合理,不过今天看到原来默认是私有继承的,想想也又有它的合理性,因为与结构体相比较,类更加强调封装,而结构体更加强调其内部组织结构,所以涉及到类的一些默认状态往往趋向于有利于封装,而结构体则相反.通过继承机制,可以利用已有的数据类型来定义新的数据类型。所定义的新的数据类型不仅拥有新定义的成员,而且还同时拥有旧的成员。我们称已存在的用来派生新类的类为基类,又称为父类。由已存在的类派生出的新类称为派生类,又称为子类。目录C++继 阅读全文