【问题标题】:Can you write a block of c++ code inside C#?你能在 C# 中编写一段 c++ 代码吗?
【发布时间】:2008-10-13 00:30:28
【问题描述】:

我听说你可以在 C# 代码中直接下拉到 C++。 这是怎么做到的?还是我听错了?

注意:我不是指 C++/CLI。

【问题讨论】:

    标签: c# .net c++


    【解决方案1】:

    您可能会想到unsafe blocks,在那里您可以编写看起来很像 C++ 的代码,因为您可以使用指针。

    【讨论】:

      【解决方案2】:

      你听错了。

      【讨论】:

        【解决方案3】:

        您可以从 C 下拉到汇编,因为 C 是指令集半不可知论的汇编。

        您可以从 C++ 降级到 C,因为 C++ 是 C 加上其他一些使其丑陋或美得可怕的东西,这取决于您的观点。

        你不能从 C# 降到 C++,因为它们是完全不同的东西。除了花括号和分号语法之外,它们之间没有直接关系。 C# 不是 C++ 的超集,也不是它的子集,也不是它的兄弟(但可能是第二个表亲)。

        也就是说,C# 提供了在所有抽象级别与外部代码交互的工具,从 Platform-Invoke(调用用 C 编写的函数)到 COM 再到各种其他类型。但 C# 本身与这些东西没有直接关系。

        【讨论】:

        • 没有理由不能实现,但我明白它没有实现。
        【解决方案4】:

        您为什么需要这样做?您可以引用本机 C 库,但我非常怀疑您是否可以在托管代码中运行本机代码。

        【讨论】:

          【解决方案5】:

          您可以通过 .NET 轻松地与 COM 对象交互。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2023-03-26
            相关资源
            最近更新 更多