C ++ DLL - 导出只具有虚拟功能但不是纯虚拟

时间:2017-03-08 04:56:59

标签: c++ dll

我正在尝试创建一个可以与各种c ++编译器一起使用的库。

我读过一些文章说只有接口可以在DLL中正确导出。

但我有一个问题..

标题

class Api
{
 virtual void func();
}

dllexport Api* create();

.cpp的

void func() { ... }
Api* create() { return new Api; }

我认为这个类有虚拟表,所以程序可以在运行时知道函数的地址。

它甚至不需要继承。它看起来比界面更简单。

是不是错了?如果可以接受,那么导出接口的优势是什么?

0 个答案:

没有答案