RELATEED CONSULTING
相关咨询
选择下列产品马上在线沟通
服务时间:8:30-17:00
你可能遇到了下面的问题
关闭右侧工具栏

新闻中心

这里有您想知道的互联网营销解决方案
C++怎么定义析构函数

这篇文章主要讲解了“C++怎么定义析构函数”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C++怎么定义析构函数”吧!

在五华等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供网站设计、成都网站设计 网站设计制作按需网站开发,公司网站建设,企业网站建设,成都品牌网站建设,网络营销推广,外贸网站制作,五华网站建设费用合理。

如果一个类需要明确的销毁动作,定义析构函数

Reason(原因)

析构函数在对象的生命周期结束时被隐式调用。如果默认的析构函数已经足够,没有必要另外定义。只有在一个类需要其成员析构函数处理之外的动作时定义非默认的析构函数。

Example(示例)
template
struct final_action {   // slightly simplified
   A act;
   final_action(A a) :act{a} {}
   ~final_action() { act(); }
};

template
final_action finally(A act)   // deduce action type
{
   return final_action
{act};
}

void test()
{
   auto act = finally([]{ cout << "Exit test\n"; });  // establish exit action
   // ...
   if (something) return;   // act done here
   // ...
} // act done here

final_action唯一的目的就是让一段代码(通常是lambda表达式)在final_action被销毁时执行。

Note(注意)

通常有两种情况类需要用户定义析构函数。