| |
1-6 Abbildende C++-Sprache, v1.1 Juni 2003 1 // IDL Modul M { // Definitionen }; // C++ namespace M { // Definitionen } Weil namespaces erst vor kurzem der C++-Sprache hinzugefügt wurden, wenig C++ Compiler stützen sie z.Z.. Alternative Kartenaufnahmen für Module OMG IDL, die , C++-namespaces nicht zu erfordern seien Sie in Abschnitt 1,43, "alternative Kartenaufnahmen für C++ Dialekte, "auf Seite 1-170. 1,3 Diagramm für Schnittstellen Eine Schnittstelle wird zu einer C++-Kategorie, die allgemeine Definitionen der Arten enthält abgebildet, Konstanten, Betriebe und Ausnahmen definiert in der Schnittstelle. Ein CORBA-C++-compliantprogramm kann nicht ? verursachen oder halten einen Fall einer Schnittstellenkategorie oder ?- Gebrauch ein Zeiger ( A * ) oder ein Hinweis ( A& ) zu einer Schnittstellenkategorie. Der Grund für diese Beschränkungen soll eine breite Vielzahl von Implementierungen erlauben. Für Beispiel, Schnittstellenkategorien konnte nicht eingeführt werden da abstrakte niedrige Kategorien wenn Programme wurden Fälle von ihnen verursachen oder halten gelassen. In einer Richtung erzeugt Kategorie ist wie ein namespace, das man nicht über ein Verwenden eintragen kann Aussage. Dieses Beispiel zeigt das Verhalten des Diagramms einer Schnittstelle: // IDL schließen Sie A an { struct S { kurzes Feld; }; }; // C++ // Gebrauch Conformant A::S s; erklären Sie eine structvariable s.field = 3; Feldzugang // Gebrauch Non-conformant: // man können nicht einen Fall einer Schnittstellenkategorie erklären... Ein a; //... noch erklären einen Zeiger zu einer Schnittstellenkategorie... A * p; //... noch erklären einen Hinweis auf einer Schnittstellenkategorie. leeres f(A&r); |  |
|
| |
|
|