繁体   English   中英

Visual C ++编译

[英]Visual C++ Compilation

我所有的商业经验都基于.NET(VB和C#)等高级语言。 我具有C和C ++(大学)的学术经验。

我不完全了解Visual C ++如何适合.NET方式。 我有使用Cygwin编译Linux上的c ++程序的经验(在大学里)。

我是否正确地说Visual C ++可以编译为C#和VB.NET之类的中介语言? 我是否假定Visual C ++由仅用于Windows的开发人员使用,而Cygwin由C ++针对多个环境的开发人员使用?

我问的原因是因为我将C ++组件(由其他开发人员编写)用作.NET应用程序的一部分。

我今天在网上阅读了许多Visual C ++文章,但尚未找到所需的答案。

不会。C++是直接编译为机器代码的,没有像.NET的IL那样的中间步骤,而只有即时编译器才能在运行时将其转换为机器代码。

如果您需要在C ++和.NET代码之间进行互操作,那么您可能需要看一下C ++ / CLI。 一种仅类似于 C ++但非常善于弥合本机C ++与.NET运行时之间的鸿沟的语言。

我是否正确地说Visual C ++可以编译为C#和VB.NET之类的中介语言?

是的,没有。 如果使用C ++ / CLI(这是Visual C ++中包含的Microsoft专有语言,类似于C ++语言,但绝对不是同一件事),那么可以,它将编译为.NET中间代码。 如果关闭C ++ / CLI并使用标准C ++,则它将编译为本机代码,而不使用.NET运行时。

Cygwin由想要针对多个环境的C ++开发人员使用?

如果要定位多个环境,则不需要Cygwin。 但是,以Cygwin编译的可移植方式编写的代码也更有可能在其他平台的GCC上编译。 您可以使用任何编译器编写可移植代码。

Cygwin将为Linux编译C ++程序

我认为您可能会对此感到困惑。 Cygwin是一个软件包,为Windows提供了GCC编译器(和POSIX类似)环境。 Cygwin不在Linux上运行,没有必要。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM