Hirdetés

Új hozzászólás Aktív témák

  • jattila48

    aktív tag

    válasz jattila48 #3189 üzenetére

    Na megint tanultam valamit. Ezt írtam:
    "Jó lenne, ha a forward deklarációban meg lehetne mondani, hogy a BodyClass teljesen közönséges osztály, nem örökölt senkitől (főleg nem többektől) és nincs virtuális tfv.-e (még emiatt is lehet ez az igazítás). Akkor talán nem generálná ezt az ilyen osztályokra amúgy tényleg fölösleges igazító kódot. Ilyet sajnos tudtommal nem lehet a C++-ban."

    És VS-ben lehet! handle_class.h-ban:
    class __single_inheritance BodyClass;

    __single_inheritance kulcsszó a forward deklarációban a megoldás! Így már igazító kód nélkül fordít, és főleg jól. Ha még azt is meg lehetne mondani, hogy az mfp nem virtuális fv.-re mutató member function pointer, akkor az indirekt címzésű call helyett is lehetne direkt címzésűt fordítani (bár ez nem nagy veszteség).

Új hozzászólás Aktív témák