// cpp.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include<iostream>
using namespace std;
class A {
public:
A() {
}
virtual void f() {
cout << "A::f()\n";
}
void f()const {
cout << "A::f() const\n";
}
};
A::A()
{
}
class B:public A
{
public:
void f() {
cout << "B::f()\n";
}
void f() const {
cout << "B::f() const\n";
}
};
void g(const A* a) {
a->f();
};
int main(int argc,char *argv[])
{
A * p = new B();
p->f();
g(p);
delete(p);
system("pause");
return 0;
}
答案输出:
B::f()
A::f() const