Visual C++項目都可以做什么
Visual Studio 2010還是比較常用的,于是我研究了一下Visual C++項目,在這里拿出來和大家分享一下,希望對大家有用。在上一回我們提到過,在以往的Visual Studio版本中,MSBuild不能很好地支持Visual C++項目,微軟轉(zhuǎn)而提供了一個替代的專門解決辦法:VCBuild。在Visual Studio 2010中,微軟終于改進(jìn)了這一點,將VCBuild的眾多特有的功能集成到MSBuild中,并且使用MSBuild替代了VCBuild。雖然 VCBuild有很多針對Visual C++項目的實用功能,但是,新的MSBuild不僅繼承了這些功能,還提供了更多的新特性,吸引用戶升級到這一新的構(gòu)建平臺上來:#t#
◆診斷功能: MSBuild增強(qiáng)了它的診斷功能,以幫助用戶更加容易地發(fā)現(xiàn)和調(diào)試構(gòu)建錯誤。例如,MSBuild可以幫助你決定如何以特定的順序編譯某些源文件,因為MSBuild可以檢測這些文件之間的依賴性。
◆可擴(kuò)展性: 使用MSBuild,用戶可以為某些特定的平臺構(gòu)建不同的解決方案。另外,也可以在構(gòu)建過程中,使用不同版本的編譯器。連接器等,使得我們的解決方案更具擴(kuò)展性。
◆集成: 我們可以將我們的Visual C++項目添加到一個已經(jīng)存在的MSBuild環(huán)境中。例如,我們可以將一個新的Visual C++項目集成到一個已經(jīng)存在的MSBuild環(huán)境中,雖然這個MSBuild環(huán)境包含的是使用.NET Framework的Visual C#和Visual Basic項目。
Multi-Targeting曾經(jīng)作為Visual Studio的一個重要特性,受到微軟的大力推廣。因為它使得“一次編碼,多個平臺運行”成為可能。這一特性給程序員們帶來了極大的便利,再也不用為目標(biāo)機(jī)器混亂的平臺而頭疼。但是在之前的Visual Studio中,Multi-Targeting特性只在托管語言中得到支持,可以針對不同的.NET Framework版本。現(xiàn)在在Visual Studio 2010中,隨著MSBuild的應(yīng)用,本地代碼的Multi-Targeting也成為可能。
在Visual Studio 2010中,我們可以選擇使用Visual Studio 2010的工具集還是Visual Studio 2008的工具集。當(dāng)我們因為一些兼容性或者是其他方面的原因不愿過早地升級到Visual Studio 2010時,我們可以利于Multi-Targeting特性,選擇使用Visual Studio 2008的Visual C++程序庫和編譯器,而同時使用Visual Studio 2010的IDE。這樣就實現(xiàn)了“魚與熊掌兼得”。當(dāng)我們最終決定升級到Visual Studio 2010的程序庫和編譯器時,只需要在MSBuild或是項目屬性中做一個簡單的設(shè)置就可以了。