Tôi đã bắt đầu sử dụng ngoại lệ C++ một cách thống nhất, và bây giờ tôi muốn trình biên dịch (g ++) kiểm tra rằng không có "rò rỉ ngoại lệ". Các trang trí throw
nên làm điều này, như const
làm cho constness của phương pháp lớp học.Có sử dụng cho trang trí ném C++ không?
Vâng, không.
Sử dụng throw
vẫn là tài liệu, nhưng thậm chí có thể gây nhầm lẫn nguy hiểm nếu người khác cho rằng chức năng không thể ném ngoại lệ khác so với các trường hợp được liệt kê trong tài liệu của nó.
Có thể g ++ bằng cách nào đó được thuyết phục để kiểm tra kỹ hơn, ví dụ: thực sự đảm bảo chức năng được trang trí là throw()
sẽ không bao giờ ném bất cứ thứ gì.
Chỉnh sửa: Tìm thấy this question xử lý chủ đề rộng rãi.
Câu hỏi tương tự ở đây: http://stackoverflow.com/questions/1037575/why-arent-exceptions-in-c-checked-by-the-compiler – Glen