| |
Juni 2003 C++-Diagramm: Diagramm für die irgendeine Art 1-65 1 Anmerkung: Ausgabe 1700 1,16,8 Wiedereinbau TypeCode Die Art Accessorfunktion bringt ein TypeCode_ptr zurück Pseudo-Gegenstandhinweis auf TypeCode dazugehörig mit Irgendwelche . Wie alle Gegenstandbezugsrückkehrwerte der Anrufer muß den Hinweis freigeben, wenn es nicht mehr benötigt wird, oder ihn a zuweisen TypeCode_var Variable für automatisches Management. Type()const TypeCode_ptr; Weil C++- typedef s sind nur Namensabkürzungen und definieren nicht die eindeutigen Arten und setzen a ein schreiben Sie mit tk_alias TypeCode in irgendein beim Konservieren von diesem TypeCode ist nicht möglich. Z.B.: // IDL typedef langes LongType; // C++ Irgendwelche irgendwelche; LongType val = 1234; irgendwelche < < = val; TypeCode_var tc = any.type(); assert(tc->kind()==tk_alias); // Behauptungsausfall! assert(tc->kind()==tk_long); // Behauptungs-O.K. In diesem Code das LongType ist eine Namensabkürzung für CORBA::Long . Folglich wenn der Wert wird, StandardC++ eingesetzt, das Einheiten überbelastet, verursachen den Einfügungoperator für CORBA::Long hervorgerufen werden. Tatsächlich weil LongType ist eine Namensabkürzung für CORBA::Long , überbelastet operator<< = für LongType kann nicht erzeugt werden sowieso. In den Fällen wo das TypeCode in den irgendwelchen als konserviert werden müssen tk_alias TypeCode , die Anwendung kann verwenden Art Modifizierfaktorfunktion auf Irgendwelche ersetzen sein TypeCode mit einem gleichwertigen. Anmerkung: Ausgabe 1700 leeres type(TypeCode_ptr); Verbessern des vorhergehenden Beispiels: // C++ Irgendwelche irgendwelche; LongType val = 1234; irgendwelche < < = val; any.type(_tc_LongType); // ersetzen Sie TypeCode TypeCode_var tc = any.type(); |  |
|
| |
|
|