文件名称:xujilei
介绍说明--下载内容均来自于网络,请自行研究使用
如果一个派生类有多个直接基类,而这些直接基类又有一个共同的基类,则在最终的派生类中会保留该间接共同基类的数据成员的多份同名成员。在引用这些同名成员时,必须在派生类对象后面增加直接基类名,以避免产生二义性。
在一个类中保留间接共同基类的多份同名成员,虽然有时是必要的,可以在不同的数据成员中分别存放不同的数据,也可以通过构造函数分别对它们进行初始化。但在大多数情况下,这种现象是不希望出现的。因为保留多份数据成员的拷贝,不仅占用较多的存储空间,还增加了访问这些成员时的困难,容易出错。而且在实际上,并不需要有多份拷贝。
C++提供虚基类(virtual base class)的方法,使得在间接共同基类时只保留一份成员。假设Graduate是类Teacher和类Student公共派生类,而类Teacher和类Student又是类Person的派生类,如图 a。在Teacher类和Student类之上增加一个共同的基类Person。作为人员的一些基本数据放在Person中,在Teacher类和Student类中增加一些必要的数据。
-If a derived class have DuoGe direct base class, and these direct base class and have a common base class, is in the final derived class will maintain the indirect common base class members of the same data of members cite these same name in members must be in a derived class object directly behind increase base class name, and to avoid to produce ambiguity
在一个类中保留间接共同基类的多份同名成员,虽然有时是必要的,可以在不同的数据成员中分别存放不同的数据,也可以通过构造函数分别对它们进行初始化。但在大多数情况下,这种现象是不希望出现的。因为保留多份数据成员的拷贝,不仅占用较多的存储空间,还增加了访问这些成员时的困难,容易出错。而且在实际上,并不需要有多份拷贝。
C++提供虚基类(virtual base class)的方法,使得在间接共同基类时只保留一份成员。假设Graduate是类Teacher和类Student公共派生类,而类Teacher和类Student又是类Person的派生类,如图 a。在Teacher类和Student类之上增加一个共同的基类Person。作为人员的一些基本数据放在Person中,在Teacher类和Student类中增加一些必要的数据。
-If a derived class have DuoGe direct base class, and these direct base class and have a common base class, is in the final derived class will maintain the indirect common base class members of the same data of members cite these same name in members must be in a derived class object directly behind increase base class name, and to avoid to produce ambiguity
(系统自动生成,下载前可以参看下载内容)
下载文件列表
[5]SummaryInformation
WordDocument
1Table
[1]CompObj
[5]DocumentSummaryInformation
WordDocument
1Table
[1]CompObj
[5]DocumentSummaryInformation