今天我在弄一個DLL工程的時候,出現(xiàn)了C4251的警告,導(dǎo)致這個警告的原因是,在我的導(dǎo)出類里面有一個D3DXMATRIX的成員變量。
要解決問題是很容易的,只需要向前申明的時候?qū)3DXMATRIX導(dǎo)出來即可。具體解決步驟如下:
一般來說,DLL都會有這么一個用于導(dǎo)出的宏。
#ifdef DLL
#define EXPORT __declspec(dllexport)
#else
#define EXPORT __declspec(dllimport)
#endif
我們可以將D3DXMATRIX的先前申明修改為:
struct EXPORT D3DXMATRIX;
這樣,之前的警告便88了。