Atributos por uso
En este tema se enumeran los atributos según los elementos del lenguaje C++ a los que se aplican.
Si un atributo precede a un elemento que no está en el ámbito del atributo, el bloque de atributos se trata como un comentario.
Atributo | Descripción |
---|---|
Atributos de módulo | Se aplica al atributo de módulo. |
Atributos de interfaz | Se aplica a la palabra clave __interface C++. |
Atributos de clase | Se aplica a la palabra clave de C++. |
Atributos de método | Se aplica a los métodos de una clase, coclase o interfaz. |
Atributos de parámetro | Se aplica a los parámetros de un método en una clase o interfaz. |
Atributos de miembros de datos | Se aplica a los miembros de datos de una clase, coclase o interfaz. |
Typedef, Enum, Union y Struct (atributos) | Se aplica a las palabras clave de C++. |
Atributos de matriz | Se aplica a matrices o SAFEARRAY s. |
Atributos independientes | Funciona más como una línea de código, pero no funciona en una palabra clave de C++. Las instrucciones de atributo independientes requieren un punto y coma al final de la línea. |
Atributos personalizados | Permite al usuario ampliar los metadatos. |
Atributos de módulo
El atributo siguiente solo se puede aplicar al atributo de módulo.
Atributo | Descripción |
---|---|
helpstringdll | Especifica el nombre del archivo DLL que se va a usar para realizar una búsqueda de cadenas del documento (localización). |
Atributos de interfaz
Los atributos siguientes se aplican a la palabra clave C++ de la interfaz (o __interface).
Atributo | Descripción |
---|---|
async_uuid | Especifica el UUID que dirige al compilador MIDL para definir versiones sincrónicas y asincrónicas de una interfaz COM. |
custom | Le permite definir sus propios atributos. |
dispinterface | Coloca una interfaz en el archivo .idl como interfaz de envío. |
dual | Coloca una interfaz en el archivo .idl como interfaz doble. |
export | Hace que una estructura de datos se coloque en el archivo .idl. |
helpcontext | Especifica un identificador de contexto que permite al usuario ver información sobre este elemento en el archivo de Ayuda. |
helpfile | Establece el nombre del archivo de Ayuda para una biblioteca de tipos. |
helpstring | Especifica una cadena de caracteres que se usa para describir el elemento al que se aplica. |
helpstringcontext | Especifica el identificador de un tema de ayuda en un archivo .hlp o .chm. |
helpstringdll | Especifica el nombre del archivo DLL que se va a usar para realizar una búsqueda de cadenas del documento (localización). |
hidden | Indica que el elemento existe, pero que no se debe mostrar en un explorador orientado al usuario. |
library_block | Coloca una construcción dentro del bloque de biblioteca del archivo .idl. |
local | Cuando se usa en el encabezado de la interfaz, permite utilizar el compilador MIDL como generador de encabezados. Cuando se usa en una función individual, designa un procedimiento local para el que no se genera código auxiliar. |
nonextensible | Especifica que la implementación IDispatch incluye solo las propiedades y los métodos enumerados en la descripción de la interfaz y que no se pueden ampliar con miembros adicionales en tiempo de ejecución. Este atributo solo es válido en una interfaz doble. |
odl | Identifica una interfaz como interfaz de Lenguaje de descripción de objetos (ODL). |
object | Identifica una interfaz personalizada. |
oleautomation | Indica que una interfaz es compatible con Automation. |
pointer_default | Especifica el atributo de puntero predeterminado para todos los punteros, excepto los punteros de nivel superior que aparecen en las listas de parámetros. |
ptr | Designa un puntero como puntero completo. |
restricted | Designa qué miembros de la biblioteca no pueden ser llamados arbitrariamente. |
uuid | Proporciona el identificador único para la biblioteca |
Debes observar estas reglas para definir una interfaz:
La convención de llamada predeterminada es __stdcall.
Si no proporcionas uno, se te proporciona un GUID.
No se permiten métodos sobrecargados.
Cuando no se especifica el atributo uuid y se usa el mismo nombre de interfaz en proyectos de atributos diferentes, se genera el mismo GUID.
Consulte también
Atributos de C++ para COM y .NET
Atributos por grupo
Referencia alfabética de los atributos