【问题标题】:How to compile a program using .NET Framework compilers at command line.?如何在命令行使用 .NET Framework 编译器编译程序。?
【发布时间】:2010-10-25 20:01:58
【问题描述】:

我想使用 .NET2.0 编译器编译一个 c++ 程序。 所以我导航到 c:\windows\Microsoft.Netframework\2.0.57\ 并使用 csc 编译器进行编译。

它显示了很多错误。

但它编译 csharp 文件。但在视觉工作室它编译。所以我认为在安装了 Visual Studio C++ 编译器时我是这样认为的。

文件名 test.cpp

使用命名空间系统;

class test

{

   void disp()

   {

      Console::WriteLine("Hello");
   }

 };

 void main()
 
{
   
  test *t=new test();
   
   t->disp();

}

所以请告诉我是否可以在命令提示符下使用基于 .net framework 2.0 的编译器编译 c++ 文件以及如何编译?

【问题讨论】:

    标签: .net visual-c++ c++-cli


    【解决方案1】:

    csc 是 C# 编译器,所以你不应该对它不编译 C++ 感到惊讶。

    使用cl(C++ 编译器)和/clr 开关来编译C++/CLI 代码。或者,如果您有解决方案/项目文件,请使用 msbuild

    请注意,与 C# 编译器不同,C++ 编译器不随 .NET 一起提供。

    【讨论】:

    • 在不安装 Visual Studio 的情况下,我在哪里可以获得 cl.exe
    • @JinKwon:不知道,恐怕。
    【解决方案2】:

    C# 编译器不喜欢 C++ 代码应该不足为奇;你不妨喂它 vb / java / 不管 - 它不会是合法的。

    要编译 C++,您需要 C++ 编译器,可能来自 C++ Express Edition。请注意,为了将其编译为混合/IL,它将被托管 C++。

    【讨论】:

    • 你们两个应该合并为一个超级英雄:)
    • 听起来很痛苦......我们的家人可能会反对(也许,也许不会)
    • “结合你的力量,我是行星队长。”
    【解决方案3】:

    csc 是 csharp 的编译器,而不是 C++

    从命令行编译的最简单方法是使用 msbuild,并将您的项目(或解决方案文件)的名称传递给它。

    【讨论】:

      猜你喜欢
      • 2016-02-02
      • 1970-01-01
      • 1970-01-01
      • 2016-07-05
      • 2012-05-26
      • 1970-01-01
      • 1970-01-01
      • 2012-10-29
      • 2010-11-24
      相关资源
      最近更新 更多