局部类
#include "iostream"
class classA
{
public:
virtual int test() = 0;
};
int func(classA *p)
{
int b = p->test();
return b + 12;
}
int main(int argc, char *argv[])
{
int i = 9;
class classB : public classA
{
int &j;
public:
classB(int &c) : j(c){}
virtual int test(){
return j;
}
};
classB *p = new classB(i);
i = 10;
std::cout << func(p) << std::endl;
return 0;
}