编写String类的构造、析构、赋值和拷贝构造函数

来源:互联网 发布:店老大软件 编辑:程序博客网 时间:2024/04/29 17:19

声明如下:

需要注意的是const的使用,在Effective C++中的第三条款就是:尽量使用const。也就是可以使用的地方尽量使用const,在这里就是这样,加入了const之后对于程序的健壮性有了提高。

接下来是函数的实现:

  1. 构造函数: 需要注意的地方时str需要判断null
  2. 拷贝构造函数: 这里也最好判断下null,其他没有什么问题,这里我一开始以为other.m_data是不能取的,试验了才知道是可以的,看起来连private都还不清楚啊。
  3. 析构函数: 删除数组的方式不要忘记了
  4. 赋值函数: 其中检查自赋值非常重要,其他就是在赋值之前要先释放之前的空间。

这么简单的东西却让我搞的很头疼,学过的东西还是忘的太多了。

原创粉丝点击