C++ 在构造函数中使用new的注意事项
- 若是在构造函数中使用new来初始化指针成员,则应在析构函数中使用delete
- new和delete必须相互兼容。new对应于delete,new[]对应于delete[]
- 若是有多个构造函数,则必须以相同的方式使用new,要么都带中括号,要么都不带。由于只有一个析构函数,全部的构造函数都必须与它兼容。
- 与上面一条例外的是能够在一个构造函数中使用new初始化指针,而在另外一个构造函数中将指针初始化为空,这是由于delete(不管是带中括号仍是不带中括号)能够用于空指针。
- C++传统上更喜欢用简单的0,而不是等价的NULL,但C++11的nullptr是更好的选择。
欢迎关注本站公众号,获取更多信息