Tag: rtti
RTTI steht für Run-Time-Type-Informationen, es ist auch bekannt als die Reflexion; es ermöglicht den Zugriff auf compile-time-Daten zur Laufzeit.
3
Antworten
Ich habe einen Zeiger auf eine polymorphe Art, p. Ich habe auch ein type_info für eine Klasse, die irgendwo in der gleichen Hierarchie ti. Wenn ich nur vergleichen Sie die typeid(*p) == ti, dann kann ich den
3
Antworten
Ich weiß von TMS Aurelius, die wir verwenden können, die "neuen" 2010-Attribute Funktion serialisiert die Datenbank-Tabelle Felder in Objekt-Eigenschaften zur Laufzeit, zum Beispiel, und ich bin kein Experte auf diesem tiefen objektorientierte schema, so schaue ich in
4
Antworten
Habe ich eine Liste mit Zeigern auf Objekte. Diese Objekte haben nichts gemeinsam (d.h. keine gemeinsame Basisklasse); zum besseren Verständnis: Es ist eine Liste von Objekten, die liegen unter dem Maus-cursor in eine GUI. Nun würde ich
2
Antworten
In meiner Anwendung gibt es eine Hierarchie, in denen nur die Klassen, die am Ende der Vererbungskette sind nicht abstrakte Klassen. Auch gibt es einige Verwendung von boost::variant. Ich möchte eine Funktion schreiben, die einen Zeiger und
2
Antworten
Ich bin mir nicht sicher über die anderen Versionen, aber in VS 2008 noch mit RTTI deaktiviert, ich kann die Abfrage der Informationen durch den Aufruf typeid(T).name() auf den Typ an. Es funktioniert mit allen Arten von
3
Antworten
Ich habe gespeichert, ein Zeiger auf eine type_info Objekt. int MyVariable = 123; const std::type_info* Datatype = &typeid(MyVariable); Wie könnte ich diese zu festgelegten anderen Variablen zu diesem Typ? Ich habe versucht, aber es funktioniert nicht: std::cout
1
Antworten
Ich haben gespeicherten Werte in xml-und lua-code und den Zugriff auf Objekt Eigenschaften durch RTTI. var o, v: TValue; // o is current object a: TStringDynArray; // params as array ctx: TRttiContext; tt: TRttiType; p: TRttiProperty; pt:
4
Antworten
Blick auf die LLVM-Dokumentation, die Sie erwähnen, dass nutzen Sie "eine benutzerdefinierte form von RTTI", und dies ist der Grund, warum Sie haben isa<>, cast<> und dyn_cast<> vorgefertigte Funktionen. In der Regel, zu Lesen, dass eine Bibliothek
3
Antworten
Mit Delphi 2010 und RTTI, ich weiß wie man die Klasse den Typ eines Objekts, und wie zu get/set den Wert und die Art der Eigenschaften eines Objekts, aber wie bestimmen Sie, welche Klasse in der Vererbungskette
1
Antworten
Nutze ich Boost::iostreams zu schreiben, gleichzeitig auf meine Konsole und in eine Datei. Wenn ich mit eclipse Debuggen(mit gdb natürlich), ich bekomme eine Warnung, die sagt RTTI-symbol nicht gefunden, für eine der Klassen, die ich benutze, die
5
Antworten
Ich bin mit Visual Studio und dem leistenden eine gültige dynamische Stimmen. RTTI aktiviert ist. Edit : Aktualisiert den code realistischer zu sein struct base { virtual base* Clone() { base* ptr = new base; CopyValuesTo( ptr
8
Antworten
Simulieren C# typeof-Befehl Verhalten in C++? C# - Beispiel: public static PluginNodeList GetPlugins (Type type) { ... } Nennen: PluginManager.GetPlugins (typeof(IPlugin)) Gewusst wie: implementieren diese mit C++? Vielleicht QT oder Boost-Bibliotheken bieten eine Lösung? Was etwa der
4
Antworten
Gibt es eine einfache Möglichkeit, Duplikate aller untergeordneten Komponenten unter der übergeordneten Komponente, einschließlich Ihrer Eigenschaften veröffentlicht? Beispiel: TPanel TLabel TEdit TListView TSpecialClassX Natürlich der wichtigste Faktor, sollte es die doppelte jede neue Komponente, die ich drop
2
Antworten
Habe ich eine Klasse in meiner Delphi-app, wo ich möchte eine einfache und dynamische Weise das zurücksetzen der string-Eigenschaften " und alle die Boolesche Eigenschaften auf False Soweit ich sehen kann, im web sollte es möglich sein,
7
Antworten
Was ist eine gute Methode zum serialisieren eines Delphi-Objekt-Struktur zu XML--mit RTTI und nicht die benutzerdefinierten code? Liebsten würde ich herausfinden, dass diese Funktion schon eingebaut ist Delphi, aber es scheint nicht zu sein. Ich habe ein
2
Antworten
Welche dieser Stücke von code ist schneller? if (obj is ClassA) {} if (obj.GetType() == typeof(ClassA)) {} Bearbeiten: Ich bin mir bewusst, dass Sie nicht das gleiche tun. InformationsquelleAutor der Frage ilitirit | 2008-10-08
6
Antworten
Wie kommt es, wenn ich dieses main.cpp: #include <iostream> #include <typeinfo> using namespace std; struct Blah {}; int main() { cout << typeid(Blah).name() << endl; return 0; } Durch kompilieren mit GCC version 4.4.4: g++ main.cpp Bekomme
10
Antworten
Ich bin vertraut mit C++ RTTI, und finde das Konzept interessant. Immer noch gibt es viel mehr Möglichkeiten zu missbrauchen, als es richtig zu verwenden (die RTTI-Schalter dread in den Sinn kommt). Als Entwickler, fand ich (und
4
Antworten
Obwohl ich bin zweifelhaft, ich bin neugierig, ob es möglich ist, zu extrahieren primitive-type template-Parameter aus einer vorhandenen Art, vielleicht mit RTTI. Beispiel: typedef std::bitset<16> WordSet; Wäre es möglich, zu extrahieren, die Zahl 16 in dem obigen
6
Antworten
Wir oft zu hören/Lesen, dass man vermeiden sollte-dynamic-casting. Ich Frage mich, was wäre 'der guten Nutzung' Beispiele, wie Sie? Edit: Ja, ich bin mir dessen bewusst,das andere thread: es ist in der Tat beim Lesen einer der
5
Antworten
Laut diesevoid* hat keine RTTI-Informationen, also eine Umwandlung von void* ist nicht legal, und es macht Sinn. Wenn ich mich richtig erinnere, dynamic_cast aus void* wurde auf gcc. Können Sie bitte klären. InformationsquelleAutor der Frage dimba |
3
Antworten
Ich bin neugierig zu wissen, was passiert, wenn das kompilieren von code mit einer dynamischen Besetzung, mit RTTI deaktiviert (entweder mit -fno-rttiauf GCC oder mit /GR- auf visual studio). Funktioniert der compiler "fällt zurück" zu static_cast ?
4
Antworten
Blick auf die LLVM-Dokumentation, die Sie erwähnen, dass nutzen Sie "eine benutzerdefinierte form von RTTI"und dies ist der Grund, warum Sie haben isa<>cast<> und dyn_cast<> vorgefertigte Funktionen. In der Regel, zu Lesen, dass eine Bibliothek reimplements einige
7
Antworten
Kann mir jemand sagen, wie aktiviere RTTI in c++ bei der Arbeit auf unix. Ich habe gehört, dass es sein kann, deaktiviert und aktiviert. auf meinem unix-Umgebung,wie könnte ich überprüfen, ob RTTI aktiviert oder deaktiviert ist? Ich
8
Antworten
Könnte bitte jemand mir erklären was ist der Unterschied zwischen der öffentlichen und veröffentlichten die Schüler in Delphi? Habe ich versucht zu schauen, Delphi Hilfe und ich verstehe, dass diese Mitglieder haben die gleiche Sichtbarkeit, aber ich
3
Antworten
Die ganze Generika-Ding ist irgendwie warf mich für eine Schleife, und um so mehr die RTT. Specificis? Ah gut, hier ist der Kern: enum QueryHelper { query1, query2; static <T> QueryHelper getQueryHelper (Class<T> expectedReturn) { if (expectedReturn.isInstance
11
Antworten
Ich verstehe, dass es eine Ressource Treffer aus der Verwendung von RTTI, aber wie groß ist es? Überall wo ich geschaut habe, sagt nur, dass "RTTI ist teuer," aber keiner von Ihnen tatsächlich geben, irgendwelche benchmarks oder
2
Antworten
Ich bin mit gcc -fno-rtti flag zu kompilieren, meine C++ ohne runtime-Typ-Informationen. Vorausgesetzt, ich bin nicht mit dynamic_cast<> oder typeid() gibt es alles, was dazu führen könnte, dass mir später Probleme? Kommentar zu dem Problem Ist das
8
Antworten
In C++, gibt es eine Möglichkeit, eine Abfrage der Art des Objekts und dann diese Informationen verwenden, um dynamisch erstellen Sie ein neues Objekt vom gleichen Typ? Sagen wir zum Beispiel, ich habe ein einfaches 3-Klassen-Hierarchie: class