1. 纯虚函数,不能定义变量
#include <iostream> using namespace std; class A { public: virtual void f() = 0; }; int main() { A a; a.f(); return 0; }
2. 虚函数是可以实现的
#include <iostream> using namespace std; class A { public: virtual void f() { cout << "hello world" << endl; } }; int main() { A a; a.f(); return 0; }
3. 纯虚函数是可以实现的
#include <iostream> using namespace std; class A { public: virtual void f() = 0; }; void A ::f() { cout << " hello world" << endl; } int main() { return 0; }
4. f() 是可以在子类中实现的
#include <iostream> using namespace std; class A { public: virtual void f() = 0; }; class B :public A { public: void f() { cout << "hello world" << endl; } }; int main() { B b; b.f(); return 0; }