在Win32上的C++中:
假设我有一个带有头文件的DLL,它声明了一个类.DLL导出一些获取指向该类实例的指针/引用的方法,例如工厂函数.
我是否正确认为如果只在其实例上调用虚函数或内联函数,则不必使用__declspec将该类标记为导出?
相反,如果想要调用非虚拟成员函数,是否有必要导出类声明?
我是否正确认为如果只在其实例上调用虚函数或内联函数,则不必使用__declspec将该类标记为导出?
是的,这是正确的,这就是COM所做的,DLL只发布了4个方法,其中一个返回到类工厂,其所有成员都是纯虚函数.
相反,如果希望调用静态定义的成员函数,是否有必要导出类声明?
不,只需导出静态成员函数.