這是來自MSDN的文字評論:「根據書ATL Internals(2ed),屬性的使用已被棄用,不應在新的ATL項目中使用。」爲什麼在Visual Studio 2008中刪除了在新ATL項目中使用屬性的選項?
但是爲什麼?
這是來自MSDN的文字評論:「根據書ATL Internals(2ed),屬性的使用已被棄用,不應在新的ATL項目中使用。」爲什麼在Visual Studio 2008中刪除了在新ATL項目中使用屬性的選項?
但是爲什麼?
在ATL中,這些屬性是編譯器技巧。它們不是平臺的核心部分,就像C#中的屬性一樣。它們比宏更容易混淆調試,並且轉儲生成的屬性代碼的方法很麻煩。
我懷疑另一個問題很可能是C++編譯器的兼容性和標準遵從性。屬性並沒有爲更漂亮的C++代碼做出貢獻,也許這種語法可能會用在未來版本的真正C++標準中。
本書的附錄D進入此處。
歸因ATL需要編譯器擴展,以及遇到的問題包括