日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
專家剖析VS2003編譯成果

VS2003編譯表示不使用微軟為標(biāo)準(zhǔn)C做的語(yǔ)言擴(kuò)展;Eliminate Duplicate Strings,主要用于字符串優(yōu)化(將字符串放到緩充池里以節(jié)省空間),使用這個(gè)參數(shù),使得一些技術(shù)人員為之煩惱。

目前創(chuàng)新互聯(lián)建站已為超過千家的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)絡(luò)空間、網(wǎng)站托管、企業(yè)網(wǎng)站設(shè)計(jì)、沿灘網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長(zhǎng),共同發(fā)展。

1) General:一些總體設(shè)置。Warning level用來控制警告信息,其中Level 1是最嚴(yán)重的級(jí)別;Warnings as errors將警告信息當(dāng)作錯(cuò)誤處理;Optimizations是代碼優(yōu)化,可以在Category的Optimizations項(xiàng)中進(jìn)行更細(xì)的設(shè)置;VS2003編譯用以生成.sbr文件,記錄類、變量等符號(hào)信息,可以在Category的Listing Files項(xiàng)中進(jìn)行更多的設(shè)置。Debug info,生成調(diào)試信息:None,不產(chǎn)生任何調(diào)試信息(編譯比較快);Line Numbers Only,僅生成全局的和外部符號(hào)的調(diào)試信息到.OBJ文件或.EXE文件,減小目標(biāo)文件的尺寸;C 7.0- Compatible,記錄調(diào)試器用到的所有符號(hào)信息到.OBJ文件和.EXE文件;Program Database,創(chuàng)建.PDB文件記錄所有調(diào)試信息;Program Database for "Edit & Continue",創(chuàng)建.PDB文件記錄所有調(diào)試信息,并且支持調(diào)試時(shí)編輯。#t#

2) C++ Language:pointer_to_member representation用來設(shè)置類定義/引用的先后關(guān)系,一般為VS2003編譯表示在引用類之前該類肯定已經(jīng)定義了;Enable Exception Handling,進(jìn)行同步的異常處理;Enable Run-Time Type Information迫使編譯器增加代碼在運(yùn)行時(shí)進(jìn)行對(duì)象類型檢查;Disable Construction Displacements,設(shè)置類構(gòu)造/析構(gòu)函數(shù)調(diào)用虛函數(shù)問題。

3) Code Generation:Processor表示代碼指令優(yōu)化,可以為80386、80486、Pentium、Pentium Pro,或者Blend表示混合以上各種優(yōu)化。Use run-time library用以指定程序運(yùn)行時(shí)使用的運(yùn)行時(shí)庫(kù)(單線程或多線程,Debug版本或Release版本),有一個(gè)原則就是,一個(gè)進(jìn)程不要同時(shí)使用幾個(gè)版本的運(yùn)行時(shí)庫(kù)。Single-Threaded,靜態(tài)連接LIBC.LIB庫(kù);Debug Single-Threaded,靜態(tài)連接LIBCD.LIB庫(kù);Multithreaded,靜態(tài)連接LIBCMT.LIB庫(kù);Debug Multithreaded,靜態(tài)連接LIBCMTD.LIB庫(kù);Multithreaded DLL,動(dòng)態(tài)連接MSVCRT.DLL庫(kù);Debug Multithreaded DLL,動(dòng)態(tài)連接MSVCRTD.DLL庫(kù)。VS2003編譯連接了單線程庫(kù)就不支持多線程調(diào)用,連接了多線程庫(kù)就要求創(chuàng)建多線程的應(yīng)用程序。#t#

VS2003編譯可以用來設(shè)定調(diào)用約定,有三種:__cdecl、__fastcall和__stdcall。各種調(diào)用約定的主要區(qū)別在于,函數(shù)調(diào)用時(shí),函數(shù)的參數(shù)是從左到右壓入堆棧還是從右到左壓入堆棧;在函數(shù)返回時(shí),由函數(shù)的調(diào)用者來清理壓入堆棧的參數(shù)還是由函數(shù)本身來清理;以及在編譯時(shí)對(duì)函數(shù)名進(jìn)行的命名修飾(可以通過Listing Files看到各種命名修飾方式)。Struct member alignment用以指定數(shù)據(jù)結(jié)構(gòu)中的成員變量在內(nèi)存中是按幾字節(jié)對(duì)齊的,根據(jù)計(jì)算機(jī)數(shù)據(jù)總線的位數(shù),不同的對(duì)齊方式存取數(shù)據(jù)的速度不一樣。這個(gè)參數(shù)對(duì)數(shù)據(jù)包網(wǎng)絡(luò)傳輸?shù)葢?yīng)用尤為重要,不是存取速度問題,而是數(shù)據(jù)位的精確定義問題,一般在程序中使用#pragma pack來指定。


文章標(biāo)題:專家剖析VS2003編譯成果
文章網(wǎng)址:http://www.5511xx.com/article/cdsjhec.html