第十二周 阅读项目 多重继承中数据关系

<span style="font-size:18px;">/*
*Copyright (c)2014,烟台大学计算机与控制工程学院
*All rights reserved.
*文件名称:d.cpp
*作    者:张旺华
*完成日期:2015年6月1日
*版 本 号:v1.0
*/
#include<iostream>
using namespace std;
class A
{
public:
   int n;
};
class B:public A {};   // class B:virtual public A{};
class C:public A {};   // class C:virtual public A{};
class D:public B,public C
{
public:
    int getn() {return B::n;}//调用函数返回类B 中的数据
};
int main()
{
   D d;
   d.B::n=10; //
   d.C::n=20;
   cout<<d.getn()<<endl; //返回类B 中的数据
   return 0;
}
</span>

运行结果:

知识点运用及学习心得:

代码上已经解释

时间: 2024-10-10 04:11:58

第十二周 阅读项目 多重继承中数据关系的相关文章

第十二周 阅读项目 (4)虚基类多重继承数据理解

<span style="font-size:18px;">/* *Copyright (c)2014,烟台大学计算机与控制工程学院 *All rights reserved. *文件名称:d.cpp *作 者:张旺华 *完成日期:2015年6月1日 *版 本 号:v1.0 */ #include<iostream> using namespace std; class A { public: int n; }; class B:virtual public A

第十二周 阅读项目 (5)

阅读下面类的定义,请说出在测试函数中不同情况的调用产生的结果 [cpp] view plaincopyprint? #include <iostream> using namespace std; class A { protected: int a,b; public: A(int aa, int bb):a(aa), b(bb) {} void printA() { cout<<"a: "<<a<<"\tb: "&

第十二周 阅读程序 虚基类 中的继承

/* *Copyright (c)2014,烟台大学计算机与控制工程学院 *All rights reserved. *文件名称:d.cpp *作 者:张旺华 *完成日期:2015年6月1日 *版 本 号:v1.0 */ #include <iostream> using namespace std; class Base { public: Base(char i) { cout<<"Base constructor. --"<<i<<

第十二周 【项目2 - 摩托车继承自行车和机动车】

[项目2 - 摩托车继承自行车和机动车] 在下面一段类的定义中,自行车类的虚基类为车辆类,机动车类的虚基类也为车辆类,摩托车类的基类为自行车类和机动车类,类之间均为公有继承,如图所示. 下载可执行文件链接motorcar.exe. (1)根据上面各类间关系的描述,补全下面程序段中空缺的代码: (2)实现程序中声明的成员函数,注意相应操作中的动作发生的条件不能满足时应给出提示. (3)运行程序,享受开摩托的过程.(可以下载可执行文件motorcar.exe,先运行再编程.不必申请驾照,这个摩托车很

第十二周阅读程序3:虚基类的构造函数

问题及代码: #include <iostream> using namespace std; class Base { public: Base(char i) { cout<<"Base constructor. --"<<i<<endl; } }; class Derived1:virtual public Base //虚基类 { public: Derived1(char i,char j):Base(i) { cout<

第十二周阅读程序4:虚拟基类-同名数据成员

问题及代码: (1)程序执行后,运行结果是多少? (2)将程序中有注释的两条语句修改为注释的内容,即将"class B:public A {};"修改为"class B:virtual public A{};","class C:public A {}; "修改为"class C:virtual public A{};",重新编译运行程序,程序的运行结果又是多少? #include<iostream> using

201671010112 第十二周—— “如何在eclipse中重定向标准输入到文件?”整理方案

一: 1.先点开run; 2.点run configuration; 3.找到common,点开: 4.在common下面,点击Input file,然后输入文件的ID (结束文件的读入,键盘按Ctrl+Z). 二: 如果是ant build , 1.点击run: 2.点External Tools,然后选External Tools Configuration: 3.双击ant build,找到common,点开,设置. 关于Ant的解释,博客园中有篇文章我觉得讲的很清楚. http://ww

第十五周 阅读项目 二进制文件读取

/* *Copyright (c)2014,烟台大学计算机与控制工程学院 *All rights reserved. *文件名称:d.cpp *作 者:张旺华 *完成日期:2015年6月3日 *版 本 号:v1.0 */ #include <iostream> #include <fstream> #include <cstdlib> using namespace std; int main( ) { int a; ofstream outfile("f1.

第十五周 阅读项目

2.查看下面程序的输出,解释为什么会有这样的输出. <code class="hljs cpp has-numbering" style="display: block; padding: 0px; background-color: transparent; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; whi