杂记5

7 篇文章 0 订阅

0. 赋值运算符的重载

  在C++中,写赋值运算符的重载的时候,一定要考虑自赋值的情况

1. 定义C++函数

在定义C++函数的时候我们尽量把这个函数里面的参数赋初值,还有就是构造函数中尽量去使用初始化成员列表去初始化这个成员变量,函数中注意const的使用

2. 析构函数判断

 析构函数里面,最好加一个判断,一般析构函数里面做的是一些清理的工作,所谓清理的工作大多是一些动态内存开辟出来的一些空间,这些空间一般用一个指针去维护它,我们在回收的时候,首先应该判断这个指针指针是否为空,然后再去回收它。

3.拷贝构造函数

我们在写类的时候,尽量去写拷贝构造函数,防止出现浅拷贝的问题

4. memcpy函数

memcpy拷贝函数的使用是memcpy(需要写入的地址,被写入的内容的地址,写入的字节的大小)

5.写时拷贝

就是使用浅拷贝,但是在调用析构函数的时候不是一直释放它,而是在使用浅拷贝的过程中使用一个计数器,这样在释放的时候不直接释放它,而是使计数器减一,等到计数器为1的时候在释放他

6. 赋值运算符的重载

  赋值运算符重载的时候,一定要考虑自赋值的问题

7. size_t

在有的地方尽量多使用size_t

8. assert

尽量多使用assert自查

9. 子类调用父类的构造函数

class BadAlloc :public Exception
{
public:
    BadAlloc(const char* msg = "")
        :Exception(1, "BadAlloc")
    {
        _errMsg += msg;
    }
    void What()
    {
        cout << _errId << endl;
        cout << _errMsg << endl;
    }
};



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值