假设我有
Base.h
class Base
{
virtual void foo() {...}
};
Derived1.h
class Derived1 : public Base
{
virtual void foo() {...}
};
Derived2.h
class Derived2 : public Base
{
virtual void foo() {...}
};
头Derived1.h文件包含在多个源文件中,Derived1类也通过Base接口使用。由于fooisvirtual和 is usedpolymorphic它不能被内联。所以它会被编译成多个obj文件。那么链接器如何解决这种情况呢?