Share via


Mechanics básico de atributos

hay tres maneras de insertar atributos en el proyecto.Primero, puede incrustarlos manualmente en el código fuente.En segundo lugar, puede incrustarlos mediante la cuadrícula de propiedades de un objeto del proyecto.Finalmente, puede incrustarlos mediante diversos asistentes.Para obtener más información sobre cómo utilizar la ventana Propiedades y los diversos asistentes, vea Crear y administrar los proyectos de Visual C++.

A partir de Visual C++ .NET, el compilador reconoce la presencia de atributos en un archivo de código fuente y puede analizarlos y comprobar dinámicamente durante la compilación.

Como antes de que, cuando se compila el proyecto, el compilador analiza cada archivo de código fuente de C++, genera un archivo objeto.sin embargo, cuando el compilador encuentra un atributo, se analiza y se comprueba sintácticamente.El compilador llama dinámicamente un proveedor de atributo para insertar código o crear otras modificaciones en tiempo de compilación.La implementación del proveedor difiere en función del tipo de atributo.Por ejemplo, los atributos ATL-relacionados se implementan mediante Atlprov.dll.

La ilustración siguiente se muestra la relación entre el compilador y el proveedor del atributo.

Gráfico de comunicación de atributos de componente

[!NOTA]

El uso del atributo no modifica el contenido del archivo de código fuente.La única vez que el código generado del atributo es visible está durante las sesiones de depuración.Además, para cada archivo de código fuente del proyecto, puede generar un archivo de texto que muestra los resultados de sustitución de atributo.Para obtener más información sobre este procedimiento, vea /Fx (Código insertado de combinación) y Código insertado de depuración.

Como la mayoría de las construcciones de C++, los atributos tienen un conjunto de características que defina el uso apropiado.Se conoce como contexto de atributo y se soluciona esta en la tabla de contexto de atributo para cada tema de referencia del atributo.Por ejemplo, el atributo de CoClass sólo se puede aplicar a una clase o estructura existente, en comparación con el atributo de cpp_quote , que se puede insertar en cualquier parte del archivo de código fuente de C++.

Vea también

Otros recursos

Conceptos de programación con atributos