Ho una semplice classe RAII per garantire che qualche handle sia correttamente smaltito. Ora vorrei affermare che nessuno aggiungerà per caso metodi virtuali ad esso. Per come la vedo io, devo affermare che la classe non ha il puntatore vtbl.Come affermare che una determinata classe non ha alcun puntatore vtbl nel suo layout?
Come posso farlo? È possibile affermare al momento della compilazione?
EDIT
mi accontenterò di compilatori desktop. Per quanto ne so non ci sono compilatori C++ desktop che non utilizzano vtbl per implementare il polimorfismo.
In teoria, non è possibile farlo in modo portatile. –
Potresti essere interessato a ottenere una classe _sealed_: http://stackoverflow.com/q/4712992/96780 –
Il vtbl è un dettaglio di implementazione. Potrebbe esistere un compilatore che non utilizza le tabelle di chiamata per implementare funzioni virtuali. Vuoi limitarti a uno specifico compilatore? – filmor