|
#include<iostream> |
|
| 10分 |
#include <iostream>
#include <cstdio>
using namespace std;
class A
{
public:
void get(){x=3,y=4,z=5;}
int x;
int fun2(){return z;}
protected:
int y;
private:
int z;
};
class B:public A
{
public:
int fun1(){return y;}
};
int main(int argc, char *argv[])
{
B b;
b.get();
cout<<b.x<<endl;
b.fun1();
b.fun2();
printf("%p\n", &B::fun1);
printf("%p\n", &B::fun2);
return 0;
}
|
| 5分 |
cout<<b.fun1<<endl;
fun1是函数不是成员变量啊 |
| 5分 |
函数调用得使用()
cout << b.fun1() << endl; cout << b.fun2() << endl; |
|
非常感谢 恍然大悟
|
|
|
如果换成私有继承呢如何访问基类?
#include<iostream> using namespace std; class A { public: void get(){x=3, y=4,z=5;} int x; protected: int y; private: int z; }; class B:private A { public: int fun1(){return x;} int fun2(){return y;} }; void main() { B b; b.fun1(); cout<<b.fun1()<<endl; b.fun2(); cout<<b.fun2()<<endl; } |
|