sách gpt4 ai đã đi

C++: Nếu tôi quá tải toán tử new, tôi có phải quá tải toán tử delete không?

In lại 作者:可可西里 更新时间:2023-11-01 16:37:57 28 4
mua khóa gpt4 Nike

我正在阅读关于 SO 和 câu trả lời 中的一个问题,它被提到为:

If no unambiguous matching deallocation function can be found, propagating the exception does not cause the object’s memory to be freed.

因此,如果我只是重载我的 mới 运算符而不是 xóa bỏ 运算符,是否会创建和调用任何默认的 xóa bỏ 运算符;或者,我是否还必须显式编写 xóa bỏ 运算符。

1 Câu trả lời

这意味着如果你用额外的参数重载 operator new,而不是用额外的参数重载相应的 delete,如果在构造函数中发生异常,则不会调用 delete 运算符。另一方面,如果你重载基本的 new(没有额外的参数),并且发生异常,将调用没有额外参数的 delete,如果你没有重载它,这将是默认的操作符 delete。

关于C++:如果我重载 new 运算符,我是否也必须重载 delete 运算符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52158193/

28 4 0
可可西里
Hồ sơ cá nhân

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá Didi Taxi miễn phí
Mã giảm giá Didi Taxi
Giấy chứng nhận ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com