伙计我几天前问了一个问题,没有时间检查它并考虑它,但现在我尝试了其中一个解决方案,我不明白为什么它有效?我的意思是为什么析构函数会在行尾调用,如下所示:
#include "stdafx.h"
#include "coutn.h"
#define coutn coutn()
int _tmain(int argc, _TCHAR* argv[])
{
coutn << "Line one " << 1;//WHY DTOR IS CALLED HERE
coutn << "Line two " << " and some text.";
return 0;
}
Run Code Online (Sandbox Code Playgroud)
我认为它与对象的生命周期有关但我不知道是什么以及如何做.我想到它有两个未命名的对象,但它们不会超出范围,所以我无法理解dtor所谓的原因.
谢谢.