当非虚函数更改为虚函数时,我应该重新编译类实现吗?

时间:2016-07-26 07:14:12

标签: c++ virtual-functions vtable binary-compatibility memory-layout

我有一个旧的静态库(类实现),我想在一个类中将非虚函数更改为虚函数,我应该重新编译库吗?

2 个答案:

答案 0 :(得分:4)

是。您必须使用它重新编译库应用程序。

答案 1 :(得分:2)

我想补充一点理由来回答@jesper 是的,因为现在每个新的虚函数都会在vtable中有新的条目,所以必须重新编译。