當前位置:首頁 » 編程軟體 » vs2010編譯器設置

vs2010編譯器設置

發布時間: 2023-06-26 00:50:39

『壹』 如何在VS2013下使用VS2010的C++編譯器並調試

以HelloWorld為例 打開VS2011 文件->新建->項目-> 左邊安裝的模版中,選中Visual C++ 中間選擇Win32控制台應用程序,輸入項目名稱 點擊確定->下一步->完成,或者直接點完成 VS2011寫了一些代碼,可以刪掉,然後自己寫 #include"stdafx.h" //這個在VS2011得寫上 #include using namespace std; void main() { cout<調試->開始執行(不調試),這樣程序會在結尾處停止 如果選啟動調試,程序就會直接執行完,看不到結果 編譯,就是菜單欄->生成->生成解決方案,或者第四項:生成+(項目名稱),或者最後一項,編譯 都是同樣的效果.

『貳』 如何在VS2010環境下編譯C++程序

用 Visual Studio 編寫 Visual C++ 程序的第一步是選擇項目的類型。對於每種項目類型,Visual Studio 都為您設置編譯器設置並生成起始代碼。

創建新項目
在「文件」菜單中,指向「新建」,然後單擊「項目...」。

在「項目類型」區域中,單擊「Win32」。然後,在「Visual Studio 已安裝的模板」窗格中,單擊「Win32 控制台應用程序」。

鍵入項目名稱。

創建新項目時,Visual Studio 將該項目放入一個解決方案。請接受解決方案的默認名稱,該名稱與項目的名稱相同。

您可以接受默認位置、鍵入一個不同的位置或者瀏覽到要保存項目的目錄。

按「確定」啟動「Win32 應用程序向導」。

在「Win32 應用程序向導」對話框的「概述」頁中,單擊「下一步」。

在「應用程序類型」下的「應用程序設置」頁,選擇「控制台應用程序」。選擇「其他選項」下的「空項目」設置並單擊「完成」。

現在,您得到了一個沒有源代碼文件的項目。

這一章將幫助大家解釋一些常見的錯誤、警告和問題,幫助大家去理解和解決一些常見問題,並了解它的根本原因。
iostream.h與<iostream>
下面的代碼為什麼在VC2010下面編譯不過去?
#include <iostream.h>
int main()
{
cout<<"Hello World."<<endl;
return 0;
}
錯誤信息:fatal error C1083: 無法打開包括文件:「iostream.h」: No such file or directory
造成這個錯誤的原因在於歷史原因,在過去C++98標准尚未訂立的時候,C++的標准輸入輸出流確實是定義在這個文件裡面的,這是C風格的定義方法,隨著C++98標準的確定,iostream.h已經被取消,至少在VC2010下面是這樣的,取而代之的是我們要用<iostream>頭文件來代替,你甚至可以認為<iostream>是這樣定義的:
namespace std
{
#include "iostream.h"
}
因此我們可以簡單的修改我們的Hello World。
#include <iostream>
using namespace std;
int main()
{
cout<<"Hello World."<<endl;
return 0;
}
iostream.h是屬於C++的頭文件,而非C的,因此標准訂立的時候被改成了<iostream>。而C的頭文件stdio.h等依然可以繼續使用,這是為了兼容C代碼。但是它們依然有對應的C++版本,如<cstdio> <cstdlib>等。記住,在VC2010上面採用C++風格的頭文件而不是C風格的頭文件,除非你是在用C。

『叄』 高手們來看看VS2010 中編譯器設置都是什麼意思(其實VS2008也差不多吧),誰能詳細的給說一下,萬分感謝了

這是C/C++編譯優化設置部分
第一行,啟用的優化等級,這里優化被禁止了
第二行,內聯函數,表示是否展開,還是以函數形式存在
第三行,是否啟用內部函數
使用內部函數的代碼比較快,因為它們沒有函數調用的系統開銷。但由於創建了附
加代碼,代碼尺寸可能比較大。
第四行,優化方式,速度優先還是代碼尺寸優先;通常會選擇速度優先,現在尺寸已不是問題
第五行,是否禁止在調用堆上創建框架指針,以加快函數調用;堆內存分配演算法需要時間
第六行,是否啟用纖程安全的線程本地存儲優化
第七行,是否啟用全局鏈接時代碼優化;指的是生成具體指令過程推遲到鏈接的時候,這樣有
助於具體的一些優化,比如,函數內部變數,有些可以是寄存器變數,沒必要再
棧里分配,寄存器訪問比內存訪問快很多,這些都依賴於函數的調用拓撲等關系。

『肆』 VS2010 嘗試設置 IDE 的進程內編譯器的「References」參數時出現問題。對 COM 組件的調用返回了錯誤HRESU

HashSet不允許元素重復。所以你String數組中重復String將不被添加進HashSet。
代碼大意:
遍歷你的數組逐個添加到HashSet中,然後拿出HashSet中元素賦值給String數組。
數組長度會變短,刪除了重復String嗎。
那個警告沒事,是List泛型的警告吧。如List list=new ArrayList();現在IDE都會報警告,要加泛型,也就是List中放置元素類型.如List<Integer> list=new ArrayList<Integer>();就沒事了

『伍』 這是VS2010編譯器優化嗎怎麼改

這個問題比較深, 所以只有哥來回答你了。

你說的問題在VS2008上也是相同的表現,這個是因為微軟的庫實現不是直接實現在你call的generate_n這個函數上的,而是有好幾重轉調,所以造成你即使對第一重調用的 模板函數用 引用去實例化,由於後面轉調的函數都是使用值去實例化的,所以實際你得到的運行效果還是值語義的。

比如你call 函數 func1<A&>(), 但是由於func1<A&>() 調用了func2<A>(), 又繼續調用了func3<A>(), 最後func3里操作的其實是一個值拷貝,所以影響不到外面的引用的對象。

哥去 微軟報了個bug,裡面寫得比較細,你可以仔細看,http://connect.microsoft.com/VisualStudio/feedback/details/676282/vs-2010-sp1-doesnt-conform-to-the-c-standard-library-a-tutorial-and-reference

『陸』 如何在MATLAB R2010a 中使用Visual C++ 2010編譯器

1、安裝補丁VS2010MEXSupport.zip

由於MATLAB R2010a 發布的時間要比 VS2010早,所以在該版本識別不了VC++2010編譯器。不過R2010a之後的版本應該不會有這種問題了。

解壓補丁包,將其中的文件放到 D:Program 文件夾下。

2、在MATLAB中安裝VC++ 2010 編譯器

打開Matlab,在 command window 中輸入 mex -setup

>> mex -setup
Please choose your compiler for building external interface (MEX) files:

Would you like mex to locate installed compilers [y]/n?n (一定要選擇 n)

Select a compiler:
[1] Intel C++ 11.1 (with Microsoft Visual C++ 2008 SP1 linker)
[2] Intel C++ 9.1 (with Microsoft Visual C++ 2005 SP1 linker)
[3] Intel Visual Fortran 11.1 (with Microsoft Visual C++ 2008 SP1 linker)
[4] Intel Visual Fortran 11.1 (with Microsoft Visual C++ 2008 Shell linker)
[5] Intel Visual Fortran 10.1 (with Microsoft Visual C++ 2005 SP1 linker)
[6] Lcc-win32 C 2.4.1
[7] Microsoft Visual C++ 6.0
[8] Microsoft Visual C++ 2005 SP1
[9] Microsoft Visual C++ 2008 Express
[10] Microsoft Visual C++ 2008 SP1
[11] Microsoft Visual C++ 2010
[12] Microsoft Visual C++ 2010 Express
[13] Open WATCOM C++
[0] None
Compiler:12

注意,如果選擇 n 之後,沒有列出這么多編譯器選項,甚至沒有出現VC++ 2010。 不要慌,此時選擇 0,即None。

Compiler: 0

mex: No compiler selected. No action taken.
Warning: The MATLAB C and Fortran API has changed to support MATLAB
variables with more than 2^32-1 elements. In the near future
you will be required to update your code to utilize the new
API. You can find more information about this at:
http://www.mathworks.com/support/solutions/en/data/1-5C27B9/?solution=1-5C27B9
Building with the -largeArrayDims option enables the new API.

然後在command window 里再次輸入 mex -setup。

>> mex -setup
Please choose your compiler for building external interface (MEX) files:

Would you like mex to locate installed compilers [y]/n?n (一定要選擇 n)

此時就會列出很多編譯器,包括已經VC++2010。如果還沒有,可重復幾次以上過程。當然前提是必須安裝VS2010,否則,再怎麼重復,也找不到VC++2010編譯器。

列出VC++2010編譯器之後,我相信接下該怎麼做對大家來說沒問題。


3、error C2371: 'char16_t' : redefinition; different basic types

在混合編程中,也許會出現如下錯誤:

C:Microsoft Visual Studio 10.0VCINCLUDEyvals.h(576) : error C2371: 'char16_t' : redefinition; different basic types
C:.h(330) : see declaration of 'char16_t'

原因是VS2010中的yvals.h添加了char16_t的定義,而Matlab的matrix.h也包含對char16_t的定義,所以同時包含這兩個頭文件的話,會導致重復定義char16_t的錯誤。

完全沒有必要修改這兩個頭文件(以防修改之後,會在將來導致一些問題),只需要在包含matrix.h之前包含yvals.h即可。例如:

#include<yvals.h>
#if(_MSC_VER>=1600)
#define__STDC_UTF_16__
#endif
#include"mex.h"

mex.h 包含matrix.h。這就要求我們必須知道所包含的頭文件是否包含matrix.h。

『柒』 用VS2010將英文程序源碼編譯以後,中文界面語言顯示亂碼

在vc6.0中默認的編碼是Ascii編碼,VS2010中默認的編碼是Unicode編碼,你可以設置你的VS2010編譯器中的字元編碼為Ascii
,你可以將代碼修改成
MessageBox(hwnd,(LPCWSTR)CString("OK"),(LPCWSTR)CString("顯示"),0);
就可以啦

『捌』 如何提高vs2010編譯速度

如果你的cpu夠強你應該學會如何利用好它來加速你的代碼編譯速度,那麼你怎麼才能夠最大限度讓你的cpu發燒呢?

下面是一個對比:

比如我的cpu是i7 3770k,

編譯cocos2d-x的libcocos2d工程:

不優化:

1>Time Elapsed 00:01:35.25

優化後:

1>Time Elapsed 00:00:21.66

效果顯著!!!

參考網頁:

Visual Studio 2010中C++並行構建調優(1)
http://developer.51cto.com/art/201003/189235.htm

1>cl : Command line warning D9030: '/Gm' is incompatible with multiprocessing; ignoring /MP switch

解決辦法是:

Properties -> Configuration Properties -> C/C++ -> Code Generation -> Enable Minimal Rebuild -> No(/Gm-)

Properties -> Configuration Properties -> C/C++ -> Geneal -> Multi-processor Compilation -> Yes(/MP)

一些含義和拓展資料:

Enable minimal rebuild
通過保存關聯信息到.IDB文件,使編譯器只對最新類定義改動過的源文件進行重編譯,提高編譯速度

Enable Incremental Compilation
同樣通過.IDB文件保存的信息,只重編譯最新改動過的函數

/MP (Build with Multiple Processes)

http://msdn.microsoft.com/en-us/library/bb385193.aspx

/Gm (Enable Minimal Rebuild)

http://msdn.microsoft.com/en-us/library/kfz8ad09.aspx

『玖』 如何改變VS2010的編譯器

改不了
不支持自己配置
如果你想使用其它編譯器
那就只能把VS做編輯,不要用它編譯 調試 運行
用你其它的編譯器 去編譯 運行。

熱點內容
擔保中介源碼 發布:2025-02-08 17:14:37 瀏覽:408
手機存儲卡速度測試 發布:2025-02-08 17:02:57 瀏覽:24
洪恩編程 發布:2025-02-08 17:02:19 瀏覽:811
linux遠程式控制制 發布:2025-02-08 17:02:16 瀏覽:151
珠心算演算法 發布:2025-02-08 17:00:37 瀏覽:915
動態ip可以做伺服器么 發布:2025-02-08 17:00:33 瀏覽:218
oracle定義存儲過程 發布:2025-02-08 16:54:35 瀏覽:149
mac玩飢荒要什麼配置 發布:2025-02-08 16:52:18 瀏覽:681
androidattributeset 發布:2025-02-08 16:51:23 瀏覽:423
c語言調用函數返回值 發布:2025-02-08 16:51:19 瀏覽:789