溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

如何使用Visual Studio項(xiàng)目轉(zhuǎn)換功能

發(fā)布時(shí)間:2021-12-04 11:52:30 來(lái)源:億速云 閱讀:186 作者:小新 欄目:編程語(yǔ)言

這篇文章將為大家詳細(xì)講解有關(guān)如何使用Visual Studio項(xiàng)目轉(zhuǎn)換功能,小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

前一個(gè)版本使用VS2003開發(fā),現(xiàn)在已經(jīng)不能滿足我們的需求,我們決定在新版本中升級(jí)到VS2008。

使我們升級(jí)的原因主要有這些:

VS2003在調(diào)試時(shí)不支持直接查看STL各種數(shù)據(jù)容器中的元素(其實(shí)通過(guò)指針可以查看某個(gè)元素的值,但不能一次查看所有元素); 不支持并行構(gòu)建,二十多萬(wàn)行代碼,構(gòu)建一次需要近半個(gè)小時(shí);

需要支持Vista/Win7操作系統(tǒng),VS2003沒(méi)有對(duì)UAC的支持,且不能直接增加manifest文件;

VS2008相對(duì)于VS2003其他的一些優(yōu)化

升級(jí)的過(guò)程主要由VS2008的轉(zhuǎn)換向?qū)瓿?。按著提示的操作一步步下?lái),就能得到轉(zhuǎn)換后的解決方案和工程文件。打開新的sln后構(gòu)建,把有問(wèn)題的地方改掉,將老的lib及dll文件也使用VS2008重新編譯,構(gòu)建出來(lái)的軟件可以正常運(yùn)行,看上去一切正常。

但是過(guò)了一段時(shí)間,測(cè)試人員發(fā)現(xiàn)Release版本的整體性能有大幅下降,幾乎是原來(lái)的二分之一到三分之二。由于我們的產(chǎn)品的定位是海量數(shù)據(jù)分析,所以性能至關(guān)重要。我和另外一名開發(fā)人員一起來(lái)分析這個(gè)問(wèn)題的原因,所有工程屬性都是正確的,也查看了svn的提交記錄,似乎一切都沒(méi)有問(wèn)題。后來(lái),我們發(fā)現(xiàn),當(dāng)前工程的編譯器選項(xiàng)中對(duì)于是否優(yōu)化設(shè)置的是"***化速度/O2",但是改成"全局優(yōu)化/Og"后性能反而有所提升。再查看原先的vcproj文件,發(fā)現(xiàn)雖然設(shè)置的是"***化速度/O2",但是在編譯器的命令行中卻沒(méi)有"/O2"的選項(xiàng)。將編譯器優(yōu)化選項(xiàng)改為其他再改回"***化速度/O2",可以看到編譯器命令行中增加了"/O2"選項(xiàng)。重新構(gòu)建,性能恢復(fù)正常。

問(wèn)題產(chǎn)生的原因,猜測(cè)應(yīng)該是 VS2008轉(zhuǎn)換VS2003的工程文件后丟失了優(yōu)化選項(xiàng),但是在工程屬性頁(yè)中錯(cuò)誤的顯示默認(rèn)選項(xiàng)"***化速度/O2"。

所以,VS提供的項(xiàng)目轉(zhuǎn)換功能是不可靠的,建議將轉(zhuǎn)換后的工程文件完整仔細(xì)的檢查一遍。或者干脆不轉(zhuǎn)換,重新建立一套工程文件,把原先的代碼添加進(jìn)來(lái),重新設(shè)置所有工程的屬性。這樣效率比較低,但是最保險(xiǎn)。

關(guān)于“如何使用Visual Studio項(xiàng)目轉(zhuǎn)換功能”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI