Attribute nach Verwendung
In diesem Thema werden Attribute entsprechend den C++-Sprachelementen aufgeführt, auf die sie angewendet werden.
Wenn einem Attribut ein Element vorangestellt wird, das sich nicht im Bereich des Attributs befindet, wird der Attributblock als Kommentar behandelt.
attribute | BESCHREIBUNG |
---|---|
Modulattribute | Gilt für das Modul-Attribut . |
Schnittstellenattribut | Gilt für die __interface C++-Schlüsselwort (keyword). |
Klassenattribute | Gilt für die C++-Schlüsselwort (keyword). |
Methodenattribut | Gilt für die Methoden in einer Klasse, Coclass oder Schnittstelle. |
Parameterattribute | Gilt für Parameter einer Methode in einer Klasse oder Schnittstelle. |
Datenmemberattribute | Gilt für die Datenmember in einer Klasse, Coclass oder Schnittstelle. |
typedef-, enum-, union- und struct-Attribute | Gilt für die C++-Schlüsselwort (keyword)s. |
Arrayattribute | Gilt für Arrays oder SAFEARRAY s. |
Eigenständige Attribute | Funktioniert eher wie eine Codezeile, funktioniert aber nicht auf einem C++-Schlüsselwort (keyword). Eigenständige Attributanweisungen erfordern ein Semikolon am Ende der Zeile. |
Benutzerdefinierte Attribute | Ermöglicht es dem Benutzer, Metadaten zu erweitern. |
Modulattribute
Das folgende Attribut kann nur auf das Modulattribute angewendet werden.
attribute | BESCHREIBUNG |
---|---|
helpstringdll | Gibt den Namen der DLL an, die zum Nachschlagen von Dokumentzeichenfolgen (Lokalisierung) verwendet werden soll. |
Schnittstellenattribut
Die folgenden Attribute gelten für die C++-Schlüsselwort (keyword) der Schnittstelle (oder __interface).
attribute | BESCHREIBUNG |
---|---|
async_uuid | Gibt die UUID an, die den MIDL-Compiler angibt, um synchrone und asynchrone Versionen einer COM-Schnittstelle zu definieren. |
custom | Hiermit können Sie Ihre eigenen Attribute definieren. |
dispinterface | Fügt eine Schnittstelle in die IDL-Datei als Verteilschnittstelle ein. |
dual | Platziert eine Schnittstelle in der IDL-Datei als duale Schnittstelle. |
Export | Bewirkt, dass eine Datenstruktur in der IDL-Datei platziert wird. |
helpcontext | Gibt eine Kontext-ID an, mit der der Benutzer Informationen zu diesem Element in der Hilfedatei anzeigen kann. |
helpfile | Legt den Namen der Hilfedatei für eine Typbibliothek fest. |
helpstring | Gibt eine Zeichenfolge an, die zum Beschreiben des Elements verwendet wird, auf das sie angewendet wird. |
helpstringcontext | Gibt die ID eines Hilfethemas in einer HLP- oder CHM-Datei an. |
helpstringdll | Gibt den Namen der DLL an, die zum Nachschlagen von Dokumentzeichenfolgen (Lokalisierung) verwendet werden soll. |
hidden | Gibt an, dass das Element vorhanden ist, aber nicht in einem benutzerdefinierten Browser angezeigt werden soll. |
library_block | Platziert ein Konstrukt im Bibliotheksblock der IDL-Datei. |
local | Ermöglicht ihnen, den MIDL-Compiler als Headergenerator zu verwenden, wenn er im Schnittstellenheader verwendet wird. Wenn sie in einer einzelnen Funktion verwendet wird, wird eine lokale Prozedur festgelegt, für die keine Stubs generiert werden. |
nonextensible | Gibt an, dass die IDispatch Implementierung nur die eigenschaften und Methoden enthält, die in der Schnittstellenbeschreibung aufgeführt sind und nicht zur Laufzeit mit zusätzlichen Membern erweitert werden können. Dieses Attribut ist nur auf einer dualen Schnittstelle gültig. |
odl | Identifiziert eine Schnittstelle als ODL-Schnittstelle (Object Description Language). |
object | Identifiziert eine benutzerdefinierte Schnittstelle. |
oleautomation | Gibt an, dass eine Schnittstelle mit der Automatisierung kompatibel ist. |
pointer_default | Gibt das Standardzeiger-Attribut für alle Zeiger mit Ausnahme von Zeigern auf oberster Ebene an, die in Parameterlisten angezeigt werden. |
ptr | Legt einen Zeiger als vollständigen Zeiger fest. |
restricted | Legt fest, welche Mitglieder der Bibliothek nicht willkürlich aufgerufen werden können. |
uuid | Stellt die eindeutige ID für die Bibliothek bereit. |
Sie müssen diese Regeln zum Definieren einer Schnittstelle beachten:
Die Standardanrufkonvention ist __stdcall.
Wenn Sie keine GUID angeben, wird eine GUID angegeben.
Es sind keine überladenen Methoden zulässig.
Wenn Sie das uuid-Attribut nicht angeben und denselben Schnittstellennamen in verschiedenen Attributprojekten verwenden, wird dieselbe GUID generiert.
Siehe auch
C++-Attribute für COM und .NET
Attribute nach Gruppen
Alphabetische Attributreferenz