以下代码的编译成功,但它没有运行,我认为因为指针p
可能有 avirtual ptr
但vptr
可能没有任何东西,这就是它编译但无法运行的原因,或者vptr
是否正在创建类似 no 的东西因为这里除了抽象类之外没有其他类。
class one {
int a;
public:
one(){a=0;};
virtual void get()=0;
};
int main() {
one *p;
p->get();
}
以下代码的编译成功,但它没有运行,我认为因为指针p
可能有 avirtual ptr
但vptr
可能没有任何东西,这就是它编译但无法运行的原因,或者vptr
是否正在创建类似 no 的东西因为这里除了抽象类之外没有其他类。
class one {
int a;
public:
one(){a=0;};
virtual void get()=0;
};
int main() {
one *p;
p->get();
}