لماذا تمت إزالة خيار استخدام السمات في مشاريع ATL الجديدة من Visual Studio 2008؟
-
09-06-2019 - |
سؤال
هذا هو النص من تعليق MSDN:"وفقًا لكتاب ATL Internals (الطبعة الثانية)، تم إهمال استخدام السمات ويجب عدم استخدامه في مشاريع ATL الجديدة."
لكن لماذا؟!!
المحلول
في ATL كانت هذه السمات خدعة مترجم.لم تكن جزءًا أساسيًا من النظام الأساسي مثل السمات الموجودة في C#.لقد كانوا أيضًا أكثر إرباكًا في تصحيح الأخطاء من وحدات الماكرو وكانت طريقة تفريغ كود السمة التي تم إنشاؤها أمرًا صعبًا.
أظن أن هناك مشكلة أخرى من المحتمل أن تكون توافق برنامج التحويل البرمجي C++ والالتزام بالمعايير.السمات لم تصنع كود C++ أكثر جمالا، وربما يمكن استخدام بناء الجملة هذا في إصدار مستقبلي لمعيار C++ حقيقي.
نصائح أخرى
الملحق د من الكتاب يذهب إلى هذا.
يتطلب ATL المنسوب ملحقات برنامج التحويل البرمجي، وتتضمن المشكلات التي تمت مواجهتها
- تصحيح أخطاء أي من التعليمات البرمجية التي تم إنشاؤها بواسطة السمة أو التفاعل بين السمة والتعليمات البرمجية الخاصة بك
- لا يوجد سيطرة على التعليمات البرمجية التي تم إنشاؤها
- الأخطاء، وخاصة حول نقاط الاتصال
لا تنتمي إلى StackOverflow