Xóa hoạt động như thế nào trong C ++?
Xóa hoạt động như thế nào trong C ++?

Video: Xóa hoạt động như thế nào trong C ++?

Video: Xóa hoạt động như thế nào trong C ++?
Video: #31 [C++]. Cấu Trúc Dữ Liệu Ngăn Xếp Ngôn Ngữ Lập Trình C++ | Cách Hoạt Động của CTDL Ngăn Xếp 2024, Tháng mười một
Anonim

Khi nào xóa là được sử dụng để phân bổ bộ nhớ cho một C ++ đối tượng lớp, trình hủy của đối tượng Là được gọi trước bộ nhớ của đối tượng Là deallocated (nếu đối tượng có hàm hủy). Nếu toán hạng cho xóa bỏ nhà điều hành Là giá trị l có thể sửa đổi, giá trị của nó Là không xác định sau đối tượng bị xóa.

Ngoài ra câu hỏi là, sự khác biệt giữa xóa và xóa trong C ++ là gì?

Cả hai đều được sử dụng cho cùng một mục đích, nhưng chúng vẫn có một số sự khác biệt , NS sự khác biệt là: xóa bỏ là anoperator trong khi free () là một hàm thư viện. xóa bỏ freethe bộ nhớ được cấp phát và gọi hàm hủy. Nhưng free () de-phân bổ bộ nhớ nhưng không gọi hàm hủy.

Người ta cũng có thể hỏi, C ++ mới hoạt động như thế nào? Khi nào Mới được sử dụng để cấp phát bộ nhớ cho một C ++ đối tượng lớp, phương thức khởi tạo của đối tượng được gọi sau khi bộ nhớ được cấp phát. Khi cấp phát một mảng bằng cách sử dụng Mới toán tử, thứ nguyên đầu tiên có thể bằng 0 - Mới toán tử trả về một con trỏ duy nhất.

Người ta cũng có thể hỏi, việc sử dụng toán tử new và delete trong C ++ là gì?

C ++ hỗ trợ phân bổ động và các đối tượng deallocationof bằng cách sử dụng toán tử mới và xóa . Này các nhà khai thác cấp phát bộ nhớ cho các đối tượng từ một nhóm được gọi là kho lưu trữ miễn phí. Các nhà điều hành mới gọi hàm đặc biệt nhà điều hành mới , và xóa toán tử gọi hàm đặc biệt nhà điều hành xóa.

Tôi có cần xóa con trỏ C ++ không?

1 Câu trả lời. Bạn không cần xóa nó, và hơn nữa, bạn không nên xóa bỏ nó. Nếu trái đất là một đối tượng tự động, nó sẽ được giải phóng tự động. Vì vậy, bằng cách thủ công xóa Một con trỏ với nó, bạn đi vào hành vi không xác định.