一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

從VC++6.0不足看Visual C++2010新特性

 步夢(mèng)九淵 2011-03-12
說(shuō)起VC,有人想到維生素C(維C),有人想到風(fēng)險(xiǎn)投資(venture capital), 程序員們尤其是做底層開(kāi)發(fā)的程序員或老程序員們第一感覺(jué)肯定會(huì)想到Visual C++6.0。為什么是6.0而不是其它的版本?這里的原因就不用我再多講了,因?yàn)樘?jīng)典了!這個(gè)經(jīng)典已經(jīng)有了10年的光榮歷史,微軟的Visual Studio系列也已經(jīng)發(fā)展到了Visual Studio 2010。漫長(zhǎng)的輝煌中Visual C++6.0也暴露出了一些問(wèn)題,在這篇文章中我們將從Visual C++6.0的問(wèn)題和Visual C++2010的新特性兩個(gè)方面向大家介紹,也可以說(shuō)是Visual C++2010 PK Visual C++6.0。

  VC++ 6.0的問(wèn)題

  VC++ 6.0是Visual Studio 6.0中的一種重要編程語(yǔ)言,也是中國(guó)C++開(kāi)發(fā)人員使用最多的開(kāi)發(fā)工具之一。 Visual C++是構(gòu)建Windows平臺(tái)下應(yīng)用程序功能最強(qiáng)大而又最復(fù)雜的工具,是目前世界上使用最多的開(kāi)發(fā)工具之一,應(yīng)用極度廣泛,從桌面應(yīng)用程序到服務(wù)器程序,從系統(tǒng)軟件到應(yīng)用軟件,圖形圖像,語(yǔ)音技術(shù),設(shè)備驅(qū)動(dòng),網(wǎng)絡(luò)安全,加密解密等等幾乎無(wú)處不在。主流的3 種操作系統(tǒng)Windows,Linux,Unix內(nèi)核都是用C語(yǔ)言和匯編語(yǔ)言寫的,而上層的高級(jí)特性都是用C++編寫。

  直到今天,Visual C++6.0仍然占據(jù)著C++開(kāi)發(fā)工具的絕對(duì)優(yōu)勢(shì)的地位。自從微軟從2000年開(kāi)始推行.NET戰(zhàn)略以來(lái),其核心的編程語(yǔ)言是C#,從那個(gè)時(shí)候,C++的支持力度就開(kāi)始不斷的下滑,雖然Visual C++也有幾次更新,但都不是很令人滿意,更靈人焦慮的是,有些開(kāi)發(fā)者開(kāi)始懷疑Visual C++的前途。盡管Visual C++的一些快捷開(kāi)發(fā)被其他開(kāi)發(fā)語(yǔ)言所取代,由于C++可以與操作系統(tǒng)的天生的曖昧關(guān)系,能夠與C語(yǔ)言無(wú)縫結(jié)合,所以Visual C++不可能被淘汰,尤其是對(duì)于底層開(kāi)發(fā)。盡管Visual C++ 6.0很強(qiáng)大,是編程語(yǔ)言里一再受寵的幸運(yùn)兒。但是Visual C++6.0已經(jīng)成了昨日黃花,尤其讓所有Visual C++6.0開(kāi)發(fā)人員郁悶的是Visual C++6.0開(kāi)發(fā)的界面還停留在早期的水平上,界面粗糙,操作復(fù)雜,比起現(xiàn)在華麗而又奪人眼目的界面設(shè)計(jì),更是遜色不少。而且Visual C++6.0也不完全符合C++標(biāo)準(zhǔn)。

  正是由于Visual C++6.0的界面設(shè)計(jì)還停留在Windows 98時(shí)期的水平,操作復(fù)雜,再加上它不是完全符合C++標(biāo)準(zhǔn),在代碼和BUG跟蹤調(diào)試上異常復(fù)雜,這也提高了踏入VC++開(kāi)發(fā)的門欖。但是隨著Visual C++2010的推出,全面支持最新的C++標(biāo)準(zhǔn)、改善了IDE的效率,并且引入了很多新的特性,這些功能的增強(qiáng),大大提高程序員們的開(kāi)發(fā)效率,帶來(lái)更高的代碼生產(chǎn)力與開(kāi)發(fā)的便捷。

  Visual C++2010 新特性

  Visual C++2010為所有的VC++開(kāi)發(fā)人員做了貼心而又周全的考慮,下面我們從可視化設(shè)計(jì)、人性化使用、安全可靠、支持C++新標(biāo)準(zhǔn)和部署簡(jiǎn)潔等方面介紹Visual C++2010的新特性。

  (1)Ribbion界面設(shè)計(jì)可視化

  在Visual C++6.0開(kāi)發(fā)里面,界面簡(jiǎn)單丑陋是其中一個(gè)不爽的地方。盡管在Visual C++ 2008里面對(duì)Ribbion功能有所改善,但是仍不能進(jìn)行可視化設(shè)計(jì),Visual C++ 2010新增了Windows7的風(fēng)格,同時(shí)最大的革新就是實(shí)現(xiàn)了可視化設(shè)計(jì),很容易設(shè)計(jì)出漂亮的程序界面。 下面我們體驗(yàn)一下Visual C++ 2010界面可視化設(shè)計(jì)的特性。具體操作步驟如下:

  1. 打開(kāi)Microsoft Visual Studio 2010,點(diǎn)擊“文件->新建->項(xiàng)目”,打開(kāi)“新建項(xiàng)目”窗體

  2. 在“新建項(xiàng)目”窗體中,選擇“Visual C++”節(jié)點(diǎn)中的“CLR”,然后在“模板”窗格中選擇“Windows 窗體應(yīng)用程序”。名稱輸入“WinFormDemo”。

1

  3. 隨即打開(kāi)Windows 窗體設(shè)計(jì)器,出現(xiàn)Form1 窗體

1

  4.設(shè)置窗體屬性,Text為WinFormDemo;添加一個(gè)Label,一個(gè)Button,一個(gè)DateTimePicker,具體如下:

控件類型 控件名稱 Text屬性
Label labMessage 請(qǐng)選擇日期
Button dtpSelected
DateTimePicker btnExit 退出

1
 5.選中dtpSelected,為其添加ValueChanged事件,輸入如下代碼

1

  6.雙擊btnExit,輸入如下代碼:

1

  7. 按“F5”運(yùn)行

1

  (2)更加人性化設(shè)計(jì)

  Visual C++ 2010也對(duì)于開(kāi)發(fā)人員做了很多人性化設(shè)計(jì),以前的Visual C++版本,經(jīng)常出現(xiàn)假死,例如頭文件編輯,改變項(xiàng)目設(shè)置,配置項(xiàng)目的物理分布,新增控件等等,微軟都做了很多調(diào)整。同時(shí)有了改進(jìn)的錯(cuò)誤智能感知支持,會(huì)在錯(cuò)誤下方顯示紅色的波浪線,同時(shí)還提供了錯(cuò)誤列表窗口,在窗口中雙擊列表中具體的項(xiàng),自動(dòng)定位到錯(cuò)誤的位置,遠(yuǎn)遠(yuǎn)勝過(guò)了以前使用的Visual Assist。

  在包含頭文件時(shí),也增加了自動(dòng)完成和過(guò)濾功能。鍵入 #include 時(shí),集成開(kāi)發(fā)環(huán)境將自動(dòng)創(chuàng)建一個(gè)包含有效的頭文件的下拉列表供您選擇。如果你繼續(xù)輸入一個(gè)文件名,集成開(kāi)發(fā)環(huán)境將自動(dòng)根據(jù)您的輸入加以過(guò)濾。在任何時(shí)候,你都可以根據(jù)這個(gè)列表來(lái)選擇你想要包含的文件。因此,這一功能可以讓程序員快速地包含那些尚不確切知道文件名的文件。

  (3)重新啟動(dòng)管理器增強(qiáng)了穩(wěn)健性和可靠性

  Visual C++ 2010新增了重新啟動(dòng)管理器。重新啟動(dòng)管理器是Visual Studio for Windows Vista 的一項(xiàng)新增功能,增加了在應(yīng)用程序意外關(guān)閉或重新啟動(dòng)的情況下對(duì)應(yīng)用程序的支持。重新啟動(dòng)管理器的行為與應(yīng)用程序的類型有關(guān),如果是文檔編輯器之類的應(yīng)用程序,重新啟動(dòng)管理使應(yīng)用程序器能夠自動(dòng)保存已經(jīng)打開(kāi)的文檔的狀態(tài)和內(nèi)容,在程序異常的時(shí)候,能夠保存運(yùn)行時(shí)的數(shù)據(jù),自動(dòng)恢復(fù)到未發(fā)生異常時(shí)的情況,從而提高了程序的穩(wěn)健性與可靠性。如果應(yīng)用程序不是文檔編輯器,則重新啟動(dòng)管理器將重新啟動(dòng)應(yīng)用程序,但默認(rèn)情況下無(wú)法保存應(yīng)用程序的狀態(tài)。

  重新啟動(dòng)后,根據(jù)不同的應(yīng)用程序,有任務(wù)對(duì)話框、Windows 消息框等消息提示框,供用戶選擇是否還原到自動(dòng)保存前的狀態(tài),如果用戶選擇不還原,重新啟動(dòng)管理器將丟棄臨時(shí)保存的文件

  向現(xiàn)有應(yīng)用程序中添加對(duì)重新啟動(dòng)管理器支持的具體步驟是:

  1. 在 Visual Studio 中打開(kāi)一個(gè)現(xiàn)有WinFormDemo應(yīng)用程序。

  2. 打開(kāi)主應(yīng)用程序的源文件。默認(rèn)情況下,此文件是與應(yīng)用程序同名的 .cpp文件。例如,WinFormDemo的主應(yīng)用程序源文件是WinFormDemo.cpp。

  3. 查找主應(yīng)用程序的構(gòu)造函數(shù)。例如,如果項(xiàng)目為MyProject,則構(gòu)造函數(shù)為

CWinFormDemoApp::CWinFormDemoApp()

 

  4. 將以下代碼行添加到構(gòu)造函數(shù)。

1

  5. 確保應(yīng)用程序的 [InitInstance] 方法調(diào)用其父級(jí)InitInstance方法:

  CWinApp::InitInstance或CWinAppEx::InitInstance。InitInstance方法負(fù)責(zé)檢查m_dwRestartManagerSupportFlags參數(shù)。
(4)完全支持C++0x新標(biāo)準(zhǔn)

  Visual Studio 2010開(kāi)始對(duì)C++新標(biāo)準(zhǔn)C++0x全面支持,不會(huì)再像Visual C++ 6.0一樣,對(duì)C++標(biāo)準(zhǔn)支持不佳。引進(jìn)了很多C++新特性,這些新特性帶來(lái)C++性能與效率更大的提升。并且在項(xiàng)目升級(jí)上做了很大改進(jìn),以前Visual Studio 2008, Visual Studio 2005升級(jí)VC6.0的時(shí)候,經(jīng)常遇到C++語(yǔ)言新特性標(biāo)準(zhǔn)兼容性問(wèn)題,Visual Studio 2010將兼容VC6.0,乃至Visual Studio2008,2005,2003開(kāi)發(fā)的程序,進(jìn)行代碼轉(zhuǎn)換與項(xiàng)目升級(jí)的時(shí)候自動(dòng)更改編譯器設(shè)置C++語(yǔ)言兼容,用以前的開(kāi)發(fā)工具開(kāi)發(fā)的程序在Visual Studio 2010都將不會(huì)再出現(xiàn)兼容性問(wèn)題與故障。那些已經(jīng)存在的非托管應(yīng)用程序,通過(guò)一定的處理也同樣能夠具有Windows7所帶來(lái)的特性。所有的老項(xiàng)目都能用Visual Studio 2010進(jìn)行兼容性升級(jí)。

  (5)更容易發(fā)布、部署

  Visual Studio 2010改變了依賴于Visual C++庫(kù)的應(yīng)用程序的發(fā)布方式。依賴于Visual C++庫(kù)的應(yīng)用程序不再需要Fusion (WinSxS) Manifest,這意味著當(dāng)我們將應(yīng)用程序部署到一個(gè)本地文件夾時(shí),將不再需要眾多的小Manifest。另外,Visual C++ 2010也同樣支持之前的各種部署機(jī)制,這些過(guò)去常用的方法在System32目錄下安裝Visual C++庫(kù)。總之,Visual C++程序的發(fā)布與部署將更加簡(jiǎn)單。

  首先,生成前面項(xiàng)目的Release文件,具體方法是選中解決方案,修改配置管理器中的配置為“Release”,然后“生成解決方案”即可。

  然后,在前面創(chuàng)建的解決方案中,添加“安裝和部署”項(xiàng)目

  1.選擇“文件->新建->項(xiàng)目”,打開(kāi)“新建項(xiàng)目”窗體

  2.選擇“安裝和部署->Visual Studio Installer->安裝項(xiàng)目”,點(diǎn)擊“確定”

1

  3.選中“Setup1”,點(diǎn)擊右鍵,選擇“添加->項(xiàng)目輸出”

  4.在“添加項(xiàng)目輸出組”中選擇“主輸出”,配置選擇“Release Win32”,如下圖

1

  5.點(diǎn)擊“重新生成”,即可產(chǎn)生下列文件,將 Setup1.msi 和 setup.exe 復(fù)制到第二臺(tái)計(jì)算機(jī)上,按照安裝向?qū)崾镜牟襟E完成安裝。

1

  如果將應(yīng)用程序部署到應(yīng)用程序本地文件夾,只需生成Release文件,然后復(fù)制WinFormDemo和C 運(yùn)行庫(kù) (CRT) 庫(kù)文件、mfc100u.dll 和 msvcr100.dll 復(fù)制到WinFormDemo項(xiàng)目的 Release 文件夾中就可以了。

  小結(jié)

  經(jīng)典也有過(guò)去時(shí),在本文中我們對(duì)VC++6.0不足做了闡述,同時(shí)對(duì)Visual C++ 2010的一些新特性做了介紹,并將這二者做了比較,不難看出,微軟花大精力推出的Visual C++ 2010,在操作使用、安全方面等,更多的考慮了使用者的習(xí)慣,在類庫(kù)(MFC)和向?qū)Чこ躺隙甲隽酥匾?,更大程度上提高了開(kāi)發(fā)人員的效率,我們還等什么呢,擁抱Visual C++ 2010,完美編碼吧。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多

    激情图日韩精品中文字幕| 女同伦理国产精品久久久| 中文字幕人妻一区二区免费| 欧美自拍系列精品在线| 色婷婷视频国产一区视频| 九九热这里只有精品哦| 丝袜美女诱惑在线观看| 都市激情小说在线一区二区三区 | 日韩特级黄片免费在线观看| 国产黑人一区二区三区| 亚洲妇女黄色三级视频| 国产欧美日韩精品一区二| 国产国产精品精品在线| 老富婆找帅哥按摩抠逼视频 | 日韩精品少妇人妻一区二区| 91爽人人爽人人插人人爽| 在线免费视频你懂的观看| 日本午夜免费啪视频在线| 国产亚洲欧美一区二区| 亚洲一区二区三区三区| 国产欧美日韩视频91| 欧美日韩亚洲国产综合网| 色哟哟精品一区二区三区| 91亚洲人人在字幕国产| 亚洲国产丝袜一区二区三区四| 国产情侣激情在线对白| 日韩一级免费中文字幕视频| 亚洲中文字幕高清视频在线观看| 中文字幕日韩欧美一区| 亚洲做性视频在线播放| 日系韩系还是欧美久久 | 欧美一级日韩中文字幕| 中文字字幕在线中文乱码二区 | 亚洲一区二区精品免费| 少妇成人精品一区二区| 日本精品最新字幕视频播放| 日韩精品视频高清在线观看| 欧美精品亚洲精品一区| 高跟丝袜av在线一区二区三区| 国产又粗又爽又猛又黄的| 久久精品伊人一区二区|