Pregunta

Este es el texto del comentario de MSDN:"Según el libro ATL Internals (2ed), el uso de atributos está obsoleto y no debe utilizarse en nuevos proyectos ATL".

¡¡¿Pero por qué?!!

¿Fue útil?

Solución

En ATL estos atributos eran un truco del compilador.No eran una parte central de la plataforma como los atributos en C#.También eran más confusos de depurar que las macros y el método de volcar el código de atributo generado era una molestia.

Sospecho que otro problema probablemente haya sido la compatibilidad del compilador de C++ y el cumplimiento de los estándares.Los atributos no hicieron que el código C++ fuera más hermoso, y tal vez esta sintaxis pueda usarse en una versión futura de un estándar C++ real.

Otros consejos

El Apéndice D del libro trata sobre esto.

ATL atribuido requiere extensiones del compilador y los problemas encontrados incluyen

  • depurar el código generado por el atributo o la interacción entre el atributo y su código
  • sin control sobre el código generado
  • errores, especialmente alrededor de los puntos de conexión
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top