| |
1-28 C-Sprache, die August 1997 Abbildet 1 /*c*/ # schließen Sie "exampleX.h" mit ein CORBA_Environment-ev; exampleXobj; exampleX_BadCall * bc; /* * irgendein Code zum Initialisieren von obj zu einem Hinweis auf einem Gegenstand * Stützen der exampleXschnittstelle */ exampleX_op(obj, &ev); switch(ev._major) { : des Falles CORBA_NO_EXCEPTION,/* * des erfolgreichen Resultates/ /* Prozeß heraus und inoutargument*/ Bruch; : des Falles CORBA_USER_EXCEPTION,/* verbraucherbestimmtes Ausnahme*/ wenn (strcmp(ex_exampleX_BadCall, CORBA_exception_id(&ev)) == 0) { bc = (exampleX_BadCall*)CORBA_exception_value(&ev); fprintf(stderr, "exampleX_op() verlassen - Grund: %s\n ", bc->reason); } sonst { /* sollte... */ nie hier erhalten fprintf(stderr, "unbekannte verbraucherbestimmte Ausnahme -%s\n", CORBA_exception_id(&ev)); } Bruch; Rückstellung: Standardausnahme*/ /* * CORBA_exception_id() kann verwendet werden, um festzustellen * die bestimmte Standardausnahme war * angehoben; das kleine Mitglied des struct * dazugehörig mit der Ausnahme (wie vorbei erbracht * CORBA_exception_value()) kann zusätzliches zur Verfügung stellen * System-spezifische Informationen über die Ausnahme */ Bruch; } /* geben Sie jede mögliche Ablage frei, die mit Ausnahmedazugehörig ist */ CORBA_exception_free(&ev); 1,23 MethodencProgrammcUnterzeichnungen Die Unterzeichnungen der Methoden, die verwendet werden, um einen Gegenstand einzuführen, hängen nicht nur von ab Sprachschwergängigkeit, aber auch auf der Wahl des Gegenstandadapters. Unterschiedliche Gegenstandadapter kann zusätzliche Parameter zu den Adapter-spezifischen Eigenschaften des Zugangsgegenstandes zur Verfügung stellen. |  |
|
| |
|
|