2010-08-12 69 views
10

WPF應用程序的核心是託管應用程序嗎? Right?所以,我必須選擇使用託管C++還是託管C#。我在幾年前對託管的C++進行了實驗。它似乎還沒有準備好黃金時段。我猜測微軟已經把更多的精力投入托管的C#中,而不是託管的C++。所以,使用託管C#似乎是兩者之間的最佳選擇。是這樣嗎?你對WPF有什麼經驗?提前致謝。應該用C++/CLI還是C#編寫WPF應用程序?

回答

13

託管C++已被C++/CLI取代,「託管C#」僅僅是C#。

我強烈建議您將C#用於新項目,並僅在需要時使用C++/CLI。 C#擁有更好的支持,擁有更大的用戶羣,並且更易於在Visual Studio 2010中工作。

此外,請記住,C++和C++/CLI是兩種不同的語言。對於我的第一個.Net項目,我選擇了C++/CLI,因爲我已經知道C++了,這是一個非常糟糕的想法:從C++到C++/CLI的學習曲線類似於從C++學習C#:不要落入該陷阱。

1

就後端而言,它們都運行在CLR上,都能勝任。真的,它只是歸結於你最舒服的。如果你不確定,試試兩者。 使用任何感覺最有成效的東西。

編輯

由於剛剛向我指出的是,它似乎是WPF模板(甚至可能是智能感知)的支持僅僅是不存在的C++。所以在這種情況下,我想我必須推薦C#。

+1

不是:Visual Studio具有支持使用C#(和VB.NET)進行WPF開發的IDE功能,但不支持C++/CLI。然後有這個:http://stackoverflow.com/questions/2681999/no-intellisense-for-c-cli-in-visual-studio-2010 – 2010-08-12 12:24:14

+0

謝謝你把我的注意力。我沒有意識到缺乏支持。 – nukefusion 2010-08-12 12:27:28

1

C#是最常用的,所以如果遇到問題,還有更多的C#在線支持。 C#也有更好的微軟支持。即使是現在,它總體上也只是一個更完整的產品。如果你真的不關心你自己,我會用C#去。

+1

不正確。C++/CLI *是一個完美且精彩的產品,特別是C++ 0x規範和使用C++頭文件模板庫的能力。但它很少是工作的正確工具。 – 2010-08-12 12:27:26

+0

我認爲C++對於遊戲來說比較好,你需要經常到達基本級別。 WPF正在嘗試做出確切的對照; '遠離繪畫,讓我爲你做所有事情'。 C#更適合這個概念。 – 2010-08-13 00:08:22

2

您可以爲後端使用託管C++,但在檢查時,VS(我正在使用2010 Ultimate)沒有任何C++ WPF應用程序的內置模板 - 只有C#或VB。

我相信你可能如果你想強制它工作,但我建議你使用C#。

4

C++/CLI只是真正支持在非託管代碼(即本地C/C++)和託管代碼之間編寫互操作層。對於「繁重」,你絕對應該使用C#(或VisualBasic.NET)。

1

IMO毫無疑問C#(或VB/F#)。

當跨越託管世界和C++庫的邊界時,C++/CLI非常棒。複雜性較高,但微妙的問題來自於將一種託管語言和一種非託管語言相結合的事實。

儘管在C++/CLI中編譯時間長,但特別是因爲代碼模板是在C#編譯器的工作方式之後進行建模的,而不是C++編譯器的工作方式。

相關問題