多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
## Utility 总结 本章介绍了几种工具类,它们可以大大简化我们的日常工作。`BOOST_STATIC_ASSERT` 提供编译期断言,它有助于我们测试前提条件或强制某些要求。对于泛型编程,`checked_delete` 在检查错误用法时非常有用,它可以节省我们大量的阅读可怕的错误信息和研究代码的时间。我们还讨论了 `addressof`, 它是一个获得对象真实地址的小工具,不用管 `operator&` 有否被重载。我们还看到了 `enable_if` 和 `disable_if` 如何控制某些函数参与重载决议,并学习了 SFINAE 有何意义! 我们也讨论了基类 `noncopyable`. 它既提供了好的习惯用法,也清楚地向任何看到这段代码的人表达了正确的意图,它值得你经常使用。总是在类中定义冗长的复制构造函数和赋值操作符,而不管它们是否需要定制,或是需要禁用,这种情况在很多代码中经常出现,它们浪费了太多的时间和金钱。 这是本书中最短的一章,我猜你一定很快就读完了。它很快就会给予你回报的,如果你马上开始使用这些工具的话。在Boost.Utility中还有一些其它的工具,我没在这里讨论它们。你可以访问Boost的网站,看看在线文档,找一下其它适合你当前工作的小工具。