网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

C++怎么提供一个不会抛出异常的交换函数

这篇文章主要讲解了“C++怎么提供一个不会抛出异常的交换函数”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C++怎么提供一个不会抛出异常的交换函数”吧!

创新互联专注于企业全网营销推广、网站重做改版、宁河网站定制设计、自适应品牌网站建设、H5场景定制成都做商城网站、集团公司官网建设、外贸营销网站建设、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为宁河等各大城市提供网站开发制作服务。

对于值类类型,考虑提供一个不会抛出异常的交换函数     

Reason(原因)

移动功能可以在实现很多常规操作时提供便利。从顺畅地移动对象到更容易地实现赋值,以至提供有保证的提交函数,这个函数可以为不会失败的调用代码提供强有力的支持。

Example, good(示例)        

class Foo {
public:
   void swap(Foo& rhs) noexcept
   {
       m1.swap(rhs.m1);
       std::swap(m2, rhs.m2);
   }
private:
   Bar m1;
   int m2;
};

为了调用者的方便,在和目标类型同一个命名空间中提供一个非成员的swap函数。

void swap(Foo& a, Foo& b)
{
   a.swap(b);
}
Enforcement(实施建议)
  • (Simple) A class without virtual functions should have a swap member function declared.

  • (简单)不包含虚函数的类就应该定义一个swap函数。

  • (Simple) When a class has a swap member function, it should be declared noexcept.

  • (简单)如果一个类包含一个swap成员函数,这个函数应该被声明为noexcept。      

感谢各位的阅读,以上就是“C++怎么提供一个不会抛出异常的交换函数”的内容了,经过本文的学习后,相信大家对C++怎么提供一个不会抛出异常的交换函数这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是创新互联,小编将为大家推送更多相关知识点的文章,欢迎关注!


新闻名称:C++怎么提供一个不会抛出异常的交换函数
标题网址:http://bjjierui.cn/article/jesios.html

其他资讯