而不是每次都执行以下操作
start();
// some code here
stop();
我想定义某种宏,这样可以编写如下代码:
startstop()
{
//code here
}
在C++中有可能吗?
最佳答案
您可以使用小型C++助手类非常接近地完成某些操作。
class StartStopper {
public:
StartStopper() { start(); }
~StartStopper() { stop(); }
};
然后在您的代码中:
{
StartStopper ss;
// code here
}
当执行进入该块并构造
ss
变量时,将调用start()
函数。当执行离开该块时,StartStopper
析构函数将被自动调用,然后将调用stop()
。