Tôi bắt gặp một sử dụng lạ của trình phá hủy trong khi làm việc trên một thư viện hiện có. Các destructor của một stack stl vector được phân bổ đã được gọi một cách rõ ràng, khi trường hợp của nó mà đối tượng đó có thể cần phải được sử dụng một lần nữa. Các đối tượng vectơ này là một phiên bản tùy biến một chút của lớp vectơ stl có phương thức clear
chuyên dụng. Trong cơ thể hủy có tồn tại hai cuộc gọi phương thức: clear()
, _Tidy()
.C++ ngăn xếp đối tượng được phân bổ, gọi hàm hủy rõ ràng
Tôi đã cố gắng nghĩ ra một lý do chính đáng tại sao destructor này được gọi thay vì chỉ clear
nhưng tôi thua lỗ. Bất cứ ai cũng làm sáng tỏ tại sao điều này có thể là một ý tưởng tốt?
Bạn có thể cung cấp mẫu mã, của vectơ vectơ và cách nó được gọi không? –
_Tidy() làm gì? – Brian
Cho chúng tôi biết cách tạo vectơ. – sbi