第三章 资源管理导读

本章节是本书的重中之重

所谓资源就是,一旦用了它,将来必须还给系统。如果不这样,糟糕的事情就会发生。C++程序中最常使用的资源就是动态分配内存(如果你分配内存却从来不曾归还它,会导致内存泄漏),但内存只是你必须管理的众多资源之一。其他常见的资源还包括文件描述器、互斥锁、图形界面中的字型和笔刷数据库连接、以及网络sockets。不论哪一种资源,重要的是,当你不再使用它时,必须将它还给系统。

尝试在任何运用情况下都确保以上所言,是件困难的事,但当你考虑到异常、函数内多重回传路径、程序维护员改动软件却没能充分理解随之而来的冲击,态势就很明显了:资源管理的特殊手段还不很充分够用。

本章一开始是一个直接而易懂且给予对象的资源管理办法,建立在C++对构造函数、析构函数、copying函数的基础上。经验显示,经过训练后严守这些做法,可以几乎消除资源管理问题。然后本章的某些条款将专门用来对付内存管理。这些排列在后的专属条款弥补了先前一般化条款的不足,因为管理内存的那个对象必须知道如何适当而正确地工作。

  • 条款13: 以对象管理资源
  • 条款14: 在资源管理类中小心copying行为
  • 条款15: 在资源管理类中提供对原始资源的访问
  • 条款16: 成对使用new和delete时要采用相同的形式
  • 条款17: 以独立的语句将newed对象置入智能指针

猜你喜欢

转载自blog.csdn.net/gaochubusheng/article/details/131742300
今日推荐