Runtime Property Introspection
-
Hallo zusammen,
ich habe mir die Boost::Python Library angeschaut. Ich würde gerne wissen wie dort das Konzept funktioniert C++ Klassen zu wrappen und in Python verfügbar zu machen. Das ganze läuft so ab:
class A { public: int getInt() { return 7; } };Danach wird die Klasse nur mit dieser Zeile registriert:
main_namespace["A"] = class_<A>("A").def("getNum",&A::getNum);Wenn ich in Python nun "A().getNum()" aufrufe bekomme ich die Zahl 7 zurück. Hat jemand irgendeine Idee wie der Rückgabewert automatisch erkannt wird? Ich bin mir nicht sicher, aber ich meine das es sowas in Objective C namens "Runtime Property Introspection" gibt.
Ich wäre euch sehr dankbar!
donnerCobra
-
def() wird wohl eine template-Funktion sein, ungefähr so:
template <class T, class U> whatever *def(const char *, T (U::*)());