| |
1-10 Abbildende C++-Sprache, v1.1 Juni 2003 1 ? D::_narrow(ap) bringt einen Nullgegenstandhinweis zurück Verengend zu A, folgen B und alle C, weil der Gegenstand alle jene Schnittstellen stützt. Das D::_narrow bringt einen Nullgegenstandhinweis zurück, weil der Gegenstand sich nicht stützt die d-Schnittstelle. Für ein anderes Beispiel nehmen Sie an, daß A, B, C und D Schnittstellenarten sind. C übernimmt von B, und übernehmen B und D von A. Now annehmen, daß ein Gegenstand von Art C zu a geführt wird Funktion als A., If die Funktion B::_narrow benennt oder C::_narrow ein neuer Gegenstand Hinweis wird zurückgebracht. Ein Anruf zu D::_narrow verläßt und bringt Null zurück. Wenn erfolgreich, die _ Enge Funktion verursacht einen neuen Gegenstandhinweis und nicht verbrauchen Sie den gegebenen Gegenstandhinweis, also ist der Anrufer für das Freigeben beide verantwortlich ursprüngliche und neue Hinweise. Die _ Enge Betrieb kann CORBA-Systemausnahmen werfen. 1,3,5 NullcGegenstandcHinweis Das Diagramm für eine Schnittstelle definiert eine statische Mitgliedsfunktion, die _ Null genannt wird das bringt einen Nullgegenstandhinweis dieser Schnittstellenart zurück. Für jede Schnittstelle A, das folgende Anruf wird garantiert, um ZUTREFFENDES zurückzubringen // C++ Boolesches true_result = is_nil(A::_nil()); Eine compliant Anwendung braucht, nicht Freigabe zu benennen auf Gegenstand ging der Hinweis von zurück die _ Null Funktion. Wie in Abschnitt 1,3,1 beschrieben, "Gegenstandbezugsarten," auf Seite 1-7, Gegenstand Hinweise können möglicherweise nicht mit Operator == verglichen werden folglich is_nil ist das einzige compliant Weise ein Gegenstandhinweis kann überprüft werden, um zu sehen, wenn es Null ist. Die _ Null Funktion kann möglicherweise keine CORBA-Ausnahmen werfen. Ein compliant Programm kann nicht versuchen, einen Betrieb durch einen Nullgegenstand hervorzurufen Hinweis, da eine gültige C++-Implementierung eines Nullgegenstandhinweises ein ungültiger Zeiger ist. 1,3,6 GegenstandcHinweis Aus Parameter Wenn ein _ var wird als Heraus überschritten Parameter, auf jeder vorhergehende Wert, den er sich bezieht, muß sein implizit freigegeben. C++ geben, das Implementierungen genügende Haken abbildet, um dieses zu treffen Anforderung, jede Gegenstandbezugsart ergibt das Erzeugung von _ heraus schreiben Sie das wird nur als das Heraus verwendet Parameterart. Z.B. schließen Sie A an Resultate im Gegenstand Bezugsart A_ptr die Helferart A_var und das Heraus Parameterart A_out . Die allgemeine Form als Gegenstandreferenz _ heraus Arten wird unten gezeigt. |  |
|
| |
|
|