sha*_*oth 23 c++ arrays initialization
我不时需要调用new[]内置类型(通常char).结果是一个具有未初始化值的数组,我必须使用memset()或std::fill()初始化元素.
如何进行new[]默认初始化元素?
Mic*_*yan 23
你为什么不用std :: vector?它会自动为你做到这一点.
std::vector<int> x(100); // 100 ints with value 0 std::vector<int> y(100,5); // 100 ints with value 5
同样重要的是要注意使用矢量更好,因为数据将被可靠地破坏.如果您有一个new[]语句,然后抛出异常,则分配的数据将被泄露.如果使用std :: vector,则将调用vector的析构函数,从而使数据被正确释放.
| 归档时间: |
|
| 查看次数: |
9954 次 |
| 最近记录: |