c++ closed source *.so + *.h virtual
Sziasztok!
Kovetkezo a kerdes: adott egy zart forrasu konyvtar (libWhatever.so), es hozza egy TyWhatever.h nevu header, amiben vannak effele deklaraciok:
namespace dzs
{ class TyWhatever
{ public:
virtual int Valami(int ize) = 0;
virtual int Bigyo(int akarmi) = 0;
};
}
Nomost, a libWhatever.so-ban vannak szimolumok, konkretan ilyesmik hogy dzs::CsWhatever::Valami(int) meg dzs::CsWhatever::Bigyo(int). Szoval ebbol az kovetkezik hogy a CsWhatever peldanyara van valojaban szuksegem, amik implementaljak a TyWhatever osztaly virtualis metodusait. Ez igy teljesen jol hangzik elsore. Annyira nem vagyok napi szintu kapcsolatban a c++ virtual-jainak a viselt dolgaival, de az onmagaban nyilvan keves ha valami ilyesmi kiterjesztest beadok meg kezzel az include "TyWhatever.h" utan, hogy
namespace dzs
{
class CsWhatever: public TyWhatever { };
}
Valami ilyesmit hianyol a gomberzekem hogy `extern dzs::CsWhatever ...;`, de igy hirtelen nem latom, hogy. A dolog szepsege ugye hogy a *.h fileokban semmi utalas nincs a dzs::CsWhatever:: szimbolumokra.
Barmi otlet amivel lehet(ne) workaroundot csinalni erre?
thx, A.
- Tovább (c++ closed source *.so + *.h virtual)
- 938 megtekintés