本文主要是介绍纯虚函数虚函数的区别,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
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;
}
虚函数可编译,因为这个时候,编译器可以认为它的实现代码存在,
即使在本类中无函数实现代码,但可以从父类中继承得到
这个在父类中找函数实现代码的过程放在链接阶段
这篇关于纯虚函数虚函数的区别的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!