class A
{
virtual void functionT() = 0;
};
class B
{
virtual void functionT();
};
int main()
{
A a; //error C2259: 'A' : cannot instantiate abstract class
// 'void A::functionT(void)' : is abstract
//抽象类无法实例化的
B b; //无法解析的外部符号 "private: virtual void __thiscall B::functionT(void)" (?functionT@B@@EAEXXZ)
//可编译不链接,因为这无定义,实现功能代码
return 0;
}
虚函数可编译,因为这个时候,编译器可以认为它的实现代码存在,
即使在本类中无函数实现代码,但可以从父类中继承得到
这个在父类中找函数实现代码的过程放在链接阶段