一句代码看不懂
#define delete (setOwner( __FILE__, __LINE__ ), false) ? setOwner( " ", 0 ) : delete
[解决办法]
定义这个宏后,下面语句
delete p;
就是展开成
(setOwner( __FILE__, __LINE__ ), false) ? setOwner( " ", 0 ) : delete p;
也就是
(setOwner( __FILE__, __LINE__ ), false)逗号表达式,
先调用setOwner(__FILE, __LINE__),表达式值为false,然后执行delete p;