【发布时间】:2014-04-16 20:46:41
【问题描述】:
我在理解下面的代码时遇到了一些问题。为什么我可以调用 c() 函数?
#include <iostream>
#include <list>
using namespace std;
class A
{};
class B : public A
{
public:
void c() { cout << "c: B" << ++x << endl; }
int x;
};
int main(void) {
class A *a = new A();
static_cast<B*>(a)->c();
return 0;
}
输出是:
constr A
c: B1
【问题讨论】:
标签: c++ static-cast