c# - C++/命令行界面 : Advantages over C#

标签 c# c++-cli declaration

与 C# 相比,托管 C++/CLI 是否有任何主要优势。绝对不是我认为的语法,因为 C++/CLI 中的以下代码真的很难看,

C++/CLI 代码:

[Out]List<SomeObject^>^% someVariable

将上面的代码与 C# 代码进行比较:

out List<SomeObject> someVariable

出于好奇,与上述相比,C++/CLI 中是否存在更丑陋的语法。

最佳答案

它几乎完全是一种互操作性语言 - 既允许 .Net 代码访问遗留 C++ 库,也用于扩展现有( native )C++ 代码库以访问 .Net 库(以及这些主题的一些变体)。

虽然 可以只用 C++/CLI 编写完全成熟的应用程序,它甚至可以为您提供一些纯 C++ 中不可用的语言功能(例如垃圾收集),但我怀疑有很多真正会这样做的人。如果您已经离开纯 C++,并且没有与 .Net 互操作的目标,则可能有更自然的选择(例如 DScala ,这取决于您想要走的方向中)。

同样,从纯 C# 迁移到 C++/CLI 可以说可以带来 C++ 模板的优势,但这种需求很少会导致您采取这一步。

关于c# - C++/命令行界面 : Advantages over C#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1886881/

相关文章:

c# - 为什么 C# 不允许您使用 var 声明多个变量?

C++ 类 - 如何从函数返回自定义类型的 vector ?

C++/命令行界面 : how to store a managed reference inside a native class?

c - 不能同时初始化 4 个以上的变量吗?

c# - 将两个小数列表组合在一个数组中

c# - dotnet restore 无法加载共享库 'libproc' 或其在 Mac OS 上的依赖项之一

visual-studio-2008 - 什么时候应该在 gcnew 分配的对象上调用 delete?

c++ - 托管类中的 native 指针

c# - 从 C# 调用 Python 脚本 - 更改脚本的文件路径会导致程序无法运行

c# - 所有 Visual Studio 编译器错误和警告的列表及其编号