Atrybuty w zależności od zastosowania

W tym temacie wymieniono atrybuty zgodnie z elementami języka C++, do których mają zastosowanie.

Jeśli atrybut poprzedza element, który nie znajduje się w zakresie atrybutu, blok atrybutu jest traktowany jako komentarz.

Atrybut opis
Atrybuty modułów Dotyczy atrybutu modułu.
Atrybuty interfejsu Dotyczy słowa kluczowego __interface C++.
Atrybuty klasy Dotyczy słowa kluczowego C++.
Atrybuty metody Dotyczy metod w klasie, coclass lub interfejsie.
Atrybuty parametru Dotyczy parametrów metody w klasie lub interfejsie.
Atrybuty składowych danych Dotyczy składowych danych w klasie, coclass lub interfejsie.
Atrybuty Typedef, Enum, Union oraz Struct Dotyczy słów kluczowych języka C++.
Atrybuty tablicy Dotyczy tablic lub SAFEARRAYs.
Oddzielne atrybuty Działa bardziej jak wiersz kodu, ale nie działa na słowie kluczowym C++. Instrukcje atrybutów autonomicznych wymagają średnika na końcu wiersza.
Atrybuty niestandardowe Umożliwia użytkownikowi rozszerzenie metadanych.

Atrybuty modułów

Do atrybutu modułu można zastosować tylko następujący atrybut.

Atrybut opis
helpstringdll Określa nazwę biblioteki DLL, która ma być używana do wykonywania wyszukiwania ciągów dokumentu (lokalizacja).

Atrybuty interfejsu

Następujące atrybuty dotyczą interfejsu (lub __interface) słowa kluczowego C++.

Atrybut opis
async_uuid Określa identyfikator UUID, który kieruje kompilator MIDL do definiowania zarówno synchronicznych, jak i asynchronicznych wersji interfejsu COM.
custom Umożliwia definiowanie własnych atrybutów.
dispinterface Umieszcza interfejs w pliku idl jako interfejs wysyłania.
dual Umieszcza interfejs w pliku idl jako podwójny interfejs.
export Powoduje umieszczenie struktury danych w pliku idl.
helpcontext Określa identyfikator kontekstu, który umożliwia użytkownikowi wyświetlanie informacji o tym elemecie w pliku Pomocy.
helpfile Ustawia nazwę pliku Pomocy dla biblioteki typów.
helpstring Określa ciąg znaków używany do opisywania elementu, do którego ma on zastosowanie.
helpstringcontext Określa identyfikator tematu pomocy w pliku hlp lub chm.
helpstringdll Określa nazwę biblioteki DLL, która ma być używana do wykonywania wyszukiwania ciągów dokumentu (lokalizacja).
hidden Wskazuje, że element istnieje, ale nie powinien być wyświetlany w przeglądarce zorientowanej na użytkownika.
library_block Umieszcza konstrukcję wewnątrz bloku biblioteki pliku idl.
local Umożliwia użycie kompilatora MIDL jako generatora nagłówków, gdy jest używany w nagłówku interfejsu. W przypadku użycia w pojedynczej funkcji wyznacza procedurę lokalną, dla której nie są generowane wycinki.
nonextensible Określa, że implementacja IDispatch zawiera tylko właściwości i metody wymienione w opisie interfejsu i nie można go rozszerzyć z dodatkowymi elementami członkowskimi w czasie wykonywania. Ten atrybut jest prawidłowy tylko w przypadku podwójnego interfejsu.
odl Identyfikuje interfejs jako interfejs ODL (Object Description Language).
object Identyfikuje interfejs niestandardowy.
oleautomation Wskazuje, że interfejs jest zgodny z usługą Automation.
pointer_default Określa domyślny atrybut wskaźnika dla wszystkich wskaźników z wyjątkiem wskaźników najwyższego poziomu, które są wyświetlane na listach parametrów.
ptr Wyznacza wskaźnik jako pełny wskaźnik.
restricted Wyznacza, których elementów członkowskich biblioteki nie można nazwać dowolnie.
uuid Udostępnia unikatowy identyfikator biblioteki

Należy przestrzegać tych reguł definiowania interfejsu:

  • Domyślna konwencja wywoływania jest __stdcall.

  • Jeśli go nie podasz, zostanie podany identyfikator GUID.

  • Metody przeciążone nie są dozwolone.

Jeśli nie określisz atrybutu uuid i użyjemy tej samej nazwy interfejsu w różnych projektach atrybutów, zostanie wygenerowany ten sam identyfikator GUID.

Zobacz też

Atrybuty języka C++ dla modelu COM i platformy .NET
Atrybuty według grup
Alfabetyczny spis atrybutów