赞
踩
和Inline有相同点,Inline就是编译的时候将函数直接展开来,不使用链接方式。Virtual也是影响编译和链接的一种修饰符。
综上:vitual关键字的引入,可以理解为阻止编译阶段的静态绑定,将绑定(虚函数)和约束工作(虚基类)转移到运行时动态处理。(在运行的时候,通过虚函数列表,去寻找每个对象对应的对于虚函数的实现,然后进行使用,其实类似C语言中的查表)
virtual是不能够实例化的,所以一般多用于接口类。这个就是C语言的多态性。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。