(一)
(1)private继承意味着“根据某物实现出”,只有实现部分被继承,接口部分应略去;
(2)它只在软件“实现”层面上有意义,在软件“设计”层面上没有意义。
(3)private继承而来的基类成员都会在派生类中成为private属性,纵使它们在base class中原本是protected或public属性;
(4)如果类之间是private继承关系,编译器不会自动将一个派生类对象...
分类:
编程语言 时间:
2014-07-08 16:56:58
阅读次数:
275
c++是一种面向对象的编程语言的一个很明显的体现就是对继承机制的支持,c++中继承分很多种,按不同的分类有不同分类方法,比如可以按照基类的个数分为多继承和单继承,可以按照访问权限分为public继承、protected继承和private继承,按照是否是虚拟继承可以分为virtual继承和non-v...
分类:
编程语言 时间:
2014-05-16 03:30:01
阅读次数:
411
#include
using namespace std;
class Animal
{
public:
Animal() {}
void eat()
{
cout << "eat\n";
}
protected:
void play()
{
cout << "play\n";
}...
分类:
其他好文 时间:
2014-05-15 06:21:51
阅读次数:
234
1.如果使用class关键字来定义类,那么定义在第一个访问标号前的任何成员都隐式指定为private;如果使用struct关键字,那么这些成员都是public。(P56)2.使用class保留字定义的派生类默认具有private继承,而使用struct保留字定义的类默认具有public继承。(P48...
分类:
编程语言 时间:
2014-05-14 08:44:06
阅读次数:
269
C里面的结构体内的成员不受任何机制保护,直接能用,比如StructtypeA.x;StructtypeA.y;StructtypeA.fun();而c++则不同,c++的类像强化型的结构体public公有继承protected保护继承private私有继承我们知道类的private和protecte...
分类:
编程语言 时间:
2014-05-06 00:42:19
阅读次数:
511
private继承,在看到effective C++之前,我发现在我之前的代码里面,没有用到这个机制,但是认真回想起还是有一些影子。
大多数人认为private继承是没有用的,其实不然,在某些情况下,它也会带给你一些惊喜。
好,言归正传,之前已经数次提到过 public继承表示的是 “is a ”的关系,也就是说每一个derived对象D同时也是base对象,任何在
base对...
分类:
其他好文 时间:
2014-05-02 18:36:10
阅读次数:
376