Freigeben über


Pointer-Attribute Typvererbung

Gemäß der DCE-Spezifikation muss jede IDL-Datei Attribute für ihre Zeiger definieren. Wenn einem Zeiger kein explizites Attribut zugewiesen wird, verwendet der Zeiger den wert, der vom [pointer_default] Schlüsselwort (keyword) angegeben wird. Einige DCE-Implementierungen lassen keine nicht zugeordneten Zeiger zu. Wenn ein Zeiger kein explizites Attribut aufweist, muss die IDL-Datei über eine [pointer_default]- Spezifikation verfügen, damit das Zeigerattribute festgelegt werden kann.

Im Standardmodus (Microsoft-Erweiterungen) können Sie ein Zeiger-Attribut in der IDL-Datei angeben, die die definierende IDL-Datei importiert. Zeiger, die in einer IDL-Datei definiert sind, können Attribute erben, die in anderen IDL-Dateien angegeben sind. Außerdem können IDL-Dateien im Standardmodus nicht zugeordnete Zeiger enthalten. Wenn weder die Basisdatei noch die importierten IDL-Dateien ein Zeigerattribut oder [pointer_default] angeben, werden nicht zugeordnete Zeiger als eindeutige Zeiger interpretiert.

Der MIDL-Compiler weist Zeigerattribute mithilfe der folgenden Prioritätsregeln zu (1 ist der höchste Wert).

Priority BESCHREIBUNG
1 Explizite Zeigerattribute werden auf den Zeiger an der Definitions- oder Verwendungswebsite angewendet.
2 Der Standardwert ist das [pointer_default]- Attribut in der IDL-Datei, die den Typ definiert.
3 Der Standardwert ist das [pointer_default]- Attribut in der IDL-Datei, die den Typ importiert.
4 Der Standardwert ist [ ptr] im DCE-Kompatibilitätsmodus oder [ eindeutig] im Microsoft-Erweiterungsmodus.