求输出:

//实现了多态  2 5 1 6 

#include <iostream>
using namespace std;


class A
{
public:
virtual void fun1(int i)
{
cout<<i<<endl;
}
public:
virtual void fun2(int j)
{
cout<<j<<endl;
}
public:
void fun(A &a)
{
 a.fun1(1);
 fun2(5);
}

};

class B:public A

public:
void fun1(int i)
{
i++;
cout<<i<<endl;
}
public:
void fun2(int j)
{
j++;
cout<<j<<endl;
}
};

main()
{

A a;

B b;
b.fun(a);
a.fun(b);

return 0;
}

//未实现    1 5 1 6

#include <iostream>
using namespace std;


class A
{
public:
virtual void fun1(int i)
{
cout<<i<<endl;
}
public:
virtual void fun2(int j)
{
cout<<j<<endl;
}
public:
void fun(A &a)
{
 a.fun1(1);
 fun2(5);
}

};

class B:public A

public:
void fun1(int i)
{
i++;
cout<<i<<endl;
}
public:
void fun2(int j)
{
j++;
cout<<j<<endl;
}
};

main()
{

A a;

B b;
b.fun(a);
a.fun(b);

return 0;
}

posted on 2009-12-03 19:41  槲寄生  阅读(101)  评论(0)    收藏  举报