Tôi có một lớp RAII đơn giản để đảm bảo một số xử lý được xử lý đúng cách. Bây giờ tôi muốn khẳng định rằng không ai sẽ thêm ngẫu nhiên bất kỳ phương pháp ảo nào vào nó. Cách tôi nhìn thấy nó, tôi cần phải khẳng định rằng lớp không có con trỏ vtbl.Làm thế nào để khẳng định rằng một lớp cụ thể không có bất kỳ con trỏ vtbl nào trong bố cục của nó?
Tôi có thể làm như thế nào? Có thể khẳng định vào thời gian biên dịch không?
EDIT
tôi sẽ giải quyết cho các trình biên dịch để bàn. Theo tôi biết không có trình biên dịch C++ trên máy tính để bàn không sử dụng vtbl để triển khai đa hình.
Về mặt lý thuyết, Bạn không thể thực hiện việc này theo cách di động. –
Bạn có thể muốn nhận một lớp _sealed_: http://stackoverflow.com/q/4712992/96780 –
Vtbl là một chi tiết triển khai. Có thể tồn tại một trình biên dịch không sử dụng các bảng gọi để thực hiện các chức năng ảo. Bạn có muốn giới hạn mình vào một trình biên dịch cụ thể không? – filmor