实现了C++多态 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; }C++多态未实现 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; }