Pourquoi l'option permettant d'utiliser des attributs dans les nouveaux projets ATL a-t-elle été supprimée de Visual Studio 2008 ?

StackOverflow https://stackoverflow.com/questions/50310

Question

Voici le texte du commentaire MSDN :"Selon le livre ATL Internals (2ed), l'utilisation des attributs est obsolète et ne doit pas être utilisée dans les nouveaux projets ATL."

Mais pourquoi?!!

Était-ce utile?

La solution

Dans ATL, ces attributs étaient une astuce du compilateur.Ils ne constituaient pas un élément essentiel de la plateforme comme les attributs en C#.Ils étaient également plus déroutants à déboguer que les macros et la méthode de vidage du code d'attribut généré était compliquée.

Je soupçonne qu'un autre problème est probablement la compatibilité du compilateur C++ et le respect des normes.Les attributs ne permettent pas d'obtenir un code C++ plus beau, et peut-être que cette syntaxe pourra être utilisée dans une future version d'un véritable standard C++.

Autres conseils

L'annexe D du livre aborde ce sujet.

L'ATL attribué nécessite des extensions du compilateur et les problèmes rencontrés incluent

  • déboguer soit le code généré par l'attribut, soit l'interaction entre l'attribut et votre code
  • aucun contrôle sur le code généré
  • bugs, notamment autour des points de connexion
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top