我有一个简单但微妙的问题。下面你会看到DLL头文件中的同一个类的两个不同的声明变体。两个DLL声明之间的区别
有人可以告诉我这个类声明的区别吗?
class __declspec(dllexport) Car {
public:
Car();
void drive(void);
typedef enum { None, Indented } Formatting;
}
从这个?
class Car {
public:
__declspec(dllexport) Car();
__declspec(dllexport) void drive(void);
__declspec(dllexport) typedef enum { None, Indented } Formatting;
}
在第一个声明,类本身是得到__declspec(dllexport)的,而在后一种情况下,每个类元件被声明单独如此。
他们有什么不同或者他们有什么共同点?
我们不得不使用第二种方法一次。原因是,导出的类是从模板类派生的,并且失败了(VC 2005) – 2009-05-29 15:56:31