Mic*_*urr 13
如果你在谈论为什么要使用C++/CLI而不是C#,我认为主要原因是:
我认为Herb Sutter可能会给出最好的概述:
如果你想知道为什么你可能想要使用原生C++而不是C#/ .NET,这可以归结为为什么你需要一个托管环境(安全,更容易开发)而不是本机代码(绝对控制,可能是速度优势).每个都有争论,答案实际上取决于你想要发展什么以及你的市场可能是什么.
我认为你指的是C++/CLI并将它与C#进行比较.C++/CLI不是C++的"味道".它是一种全新的语言,具有完全不同的标准库和完全不同的约定.
在工作中我们发现C++/CLI作为C++和.NET之间的粘合语言很有价值,但我们不会将它用于除界面粘合之外的任何东西 - 在所有其他应用程序中,C#比C++具有巨大的优势.
如果你指的是像亚当描述的那样的MS C++扩展,那么没有理由不使用它们,如果它们使你的工作更容易.