日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

关于bin和obj文件夹。debug 和release的区别(转)

發(fā)布時間:2024/9/5 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 关于bin和obj文件夹。debug 和release的区别(转) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

?

關(guān)于bin和obj文件夾。

樓主hcaihao(影子男孩)2002-05-29 20:04:24 在 .NET技術(shù) / C# 提問

VS.Net會生成bin和obj文件夾以及它們下面的Debug和Release文件夾共4個,誰能告訴我分別有什嗎作用? 問題點數(shù):0、回復(fù)次數(shù):4Top


?

bin是放最終代碼的目錄 ?
? obj就放中間代碼的目錄 ?
? ?
? release和debug是不同的運行方式 ?
? debug會增加調(diào)試代碼,方便調(diào)試。調(diào)試完后,用release版本發(fā)布,沒有調(diào)試代碼,減小程序體積,加快執(zhí)行速度!Top


?

既然obj就放中間代碼的目錄,為什嗎還要release呢?同理,既然bin是放最終代碼的目錄還要debug干什嗎?不是多此一舉嗎?Top


?

哎! ?
? 一、先說說 ? 編譯: ?
? ? 編譯一個源程序文件,要經(jīng)過

語法、類型,甚至要判斷執(zhí)行時的可行性等。 ?
? ? 是一個對文件多次掃描的過程,最后還有代碼優(yōu)化的過程。會有一大堆的中間文件產(chǎn)生。vc6下的一個mfc項目 ? obj目錄里會有好幾M的中間(臨時)文件。 ?
? 再復(fù)雜點,一個project有圖片(聲音)等資源文件,要調(diào)用其他DLL類庫(可能是.net組件,可能是com),還可能由多個.cs文件組成。要把 這么多東西連接在一起。以前在DOS下用C或PASCAL,要先編譯成.obj文件,再用link.exe連接在一起,才是一個exe文件。(記得 pascal還是fortran要用兩個編譯程序才能得到一個.obj的中間文件) ?
? ? 結(jié)論:編譯需要大量的中間文件存放臨時結(jié)果,為下一步做準備。C#是面向?qū)ο蟮膹?fù)雜度更高!obj目錄就是用來存放臨時文件的! ?
? ?
? 二、debug ? & ? release ?
? debug調(diào)試,你在程序中設(shè)置了斷點,為什么vs.net知道在那里要停下來,當你把鼠標移到某個變量上,vs.net就會顯示它當時的值? ?
? ? 因為編譯器在代碼中添加了許多調(diào)試需要的代碼,可以讓vs.net得到,返回給你。 ?
? ? 這些代碼當然是要占用空間和時間的,在你的程序調(diào)試完了后,可以正確運行了。完全可以去掉這些代碼,這時候就應(yīng)該用Release模式了。 ?
? ?
? 不管Debug還是Release模式,都要編譯,都有中間臨時代碼產(chǎn)生,所以obj目錄下有debug ? release目錄。兩種模式編譯的結(jié)果,就放在bin目錄下。 ?
? 編譯完后,中間臨時代碼是沒什么用的了,所以一般不管obj目錄里的東西! ?
? ?
? 各位說說,我是不是可以去寫書了? ? :)

轉(zhuǎn)載于:https://www.cnblogs.com/yzl495/p/4617822.html

總結(jié)

以上是生活随笔為你收集整理的关于bin和obj文件夹。debug 和release的区别(转)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。