簡體   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