Freigeben über


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 SAFEARRAYs.
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