一道题
来源:互联网 发布:应用搬家软件 编辑:程序博客网 时间:2024/06/04 19:13
定义基类Base,有两个共有成员函数fn1()、fn2(),私有派生出Derived类,如果想在Derived类的对象中使用基类函数fn1(),应怎么办?
我的代码:
#include<iostream>using namespace std;class Base{public: Base(){} ~Base(){} void fn1(); void fn2();};void Base::fn1(){ cout << "Base fn1 is used." << endl;}void Base::fn2(){ cout << "Base fn2 is used." << endl;}class Derived :public Base{public: Derived(){} ~Derived(){}};int main(){ Derived n; n.fn1(); n.fn2(); return 0;}
教程的代码:
#include <iostream>using namespace std;class Base{public: int fn1() const { cout << "Base fn1 is used." << endl; return 1; } int fn2() const { cout << "Base fn2 is used." << endl; return 2; }};class Derived : private Base{public: int fn1() { cout << "Derived fn1 is used." << endl; return **Base::fn1();** }; int fn2() { cout << "Derived fn2 is used." << endl; return **Base::fn2();** };};int main(){ Derived derive; derive.fn1(); derive.fn2(); return 0;}
不是很明白加粗地方的想法。
0 0