宏不起作用

Macro don't work

本文关键字:不起作用      更新时间:2023-10-16
#define SAFE_RELEASE(ptr) {if((ptr)){(ptr)->Release(); (prt)=nullptr;}}

这是一本游戏编程书中的宏;在VS2012中,当我调用此宏时,存在编译错误:

SAFE_RELEASE(device3D);
SAFE_RELEASE(direct3D);

错误是" 'ptr':未声明的标识符 "。

宏中的拼写错误

(prt)=nullptr;

应该是

(ptr)=nullptr;

(请注意,这不会解释您发布的错误消息。 我假设其中也有错字!