博览网C++学习第二周

       本周仍然是基本的class设计,只是内含指针(资源)函数

       对于这种class须要用构造/析构函数作RAII。而且要处理该class的spa

复制控制(拷贝构造和operator=)要么禁止复制,要么深拷贝,要么设计

引用计数等等。。。用Big Three来管理资源实现“自动”的内存管理是很指针

好的。code

       其实,把这个概念通常化,能够把指针抽象成一个class,实现本身的blog

资源管理,成为智能指针。为何有了shared_ptr,等智能指针还要本身写内存

智能指针(或者叫句柄?)由于咱们有本身的需求啊,每一个程序都有本身资源

不同凡响的地方,好比写时复制啊,析构时用一些特殊的方式释放资源啊内存管理

等等。编译

       吐槽一下做业的题目,能出得用心一些吗?为了让类有一个指针数据,

直接把Point类型的数据成员变成Point*的指针成员,能不能稍微含蓄一些?

好比你用Pimp手法写成:

class Rectangle {
public:
  //your code
private:
  struct  Rectangle_Impl;
  Rectangle_Impl* pImpl;   
};

这样不是也含有指针成员了吗?并且还使class的界面和实现完全分离,大大下降了文件间的编译依赖性。

相关文章
相关标签/搜索