error C3861: ‘AFX_ZERO_INIT_OBJECT’ 找不到識別項

在 CodeProject 找到一個可以使用的範例 [註1]

Crystal Edit – syntax coloring text editor

不過下載建置後產生一個問題:

AFX_ZERO_INT_OBJECT()找不到識別項

提示是 AFX_ZERO_INIT_OBJECT() 識別項未定義

錯誤訊息:

AFX_01

有錯誤的程式碼如下:

AFX_02

 

[解法]

請教 Google 大神 [註2] 後發現是要先 Define 他

在要用到的地方前面加上以下的程式碼就建置成功了

#define AFX_ZERO_INIT_OBJECT(base_class) \
memset(((base_class*)this)+1, 0, sizeof(*this) - sizeof(class base_class));

 

[參考資料]

Crystal Edit – syntax coloring text editor

http://bbs.csdn.net/topics/40409010