bin是放最终代码的目录
obj就放中间代码的目录 
 
release和debug是不同的运行方式 
debug会增加调试代码,方便调试。调试完后,用release版本发布,没有调试代码,减小程序体积,加快执行速度! 
 
一、先说说 编译: 
    编译一个源程序文件,要经过语法、类型,甚至要判断执行时的可行性等。 是一个对文件多次扫描的过程,最后还有代码优化的过程。会有一大堆的中间文件产生。vc6下的一个mfc项目 obj目录里会有好几M的中间(临时)文件。 再复杂点,一个project有图片(声音)等资源文件,要调用其他DLL类库(可能是.net组件,可能是com),还可能由多个.cs文件组成。要把这么多东西连接在一起。以前在DOS下 用C或PASCAL,要先编译成.obj文件,再用link.exe连接在一起,才是一个exe文件。(记 得pascal还是fortran要用两个编译程序才能得到一个.obj的中间文件)


结论:编译需要大量的中间文件存放临时结果,为下一步做准备。C#是面向对象的复杂度 
更高!obj目录就是用来存放临时文件的! 
 
二、debug & release 
debug调试,你在程序中设置了断点,为什么vs.net知道在那里要停下来,当你把鼠标移到某个变量上,vs.net就会显示它当时的值? 
因为编译器在代码中添加了许多调试需要的代码,可以让vs.net得到,返回给你。 
这些代码当然是要占用空间和时间的,在你的程序调试完了后,可以正确运行了。完全可以去掉这些代码,这时候就应该用Release模式了。 
 
不管Debug还是Release模式,都要编译,都有中间临时代码产生,所以obj目录下有debug release目录。两种模式编译的结果,就放在bin目录下。 
编译完后,中间临时代码是没什么用的了,所以一般不管obj目录里的东西!

关于bin和obj文件夹相关推荐

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

    关于bin和obj文件夹. 楼主hcaihao(影子男孩)2002-05-29 20:04:24 在 .NET技术 / C# 提问 VS.Net会生成bin和obj文件夹以及它们下面的Debug和Re ...

  2. 项目文件夹下的obj文件夹

    visual studio 2005在编译过程中要生成一些中间文件,生成的这些中间文件就存放在obj文件夹中.obj文件夹下的Debug.Release文件夹分别存放调试版本.发布版本编译过程中生成的 ...

  3. C# winform bin文件夹、obj文件夹、Properties文件夹下分别存放什么文件?

    http://zhidao.baidu.com/question/128047213 Properties文件夹 定义你程序集的属性 项目属性文件夹 一般只有一个 AssemblyInfo.cs 类文 ...

  4. 为什么vsdebug没有生成obj文件_VS中bin和obj文件引发的问题

    在敲机房收费系统的时候通常都会遇到这个问题:"未能加载文件或程序集"DAL"或它的某一个依赖项.系统找不到指定的文件". 解决方案: 修改将DAL的输出目录 修 ...

  5. java中bin和src文件夹_编译src中的所有文件?

    这是我得到的: /myjava/compile.cmd /myjava/src/a/HelloWorld.java /myjava/src/b/Inner.java /myjava/src/b/Inn ...

  6. 解决方案资源管理器中显示bin,Debug等文件夹

    1.项目 -- 显示所有文件 2.右击新出现的bin,Debug等文件夹 -- 加入到项目 即可

  7. /bin和/lib文件夹的区别

    lib一般放库文件,也就是后缀.lib的,include 一般包含头文件目录 bin表示binary目录,一般都是dll,exe等

  8. Obj文件和Bin文件

    本文导读:在用visual studio 编程时,会看到项目文件中含有bin和obj这两个文件夹,那么这两个文件夹具体包含一些什么东西的,具体作用是什么? 一.Bin文件夹 1.用来保存项目生成后程序 ...

  9. 电脑磁盘里总有个“.Trash-1000”,$recycle.bin文件夹删不掉,好像是装ubuntu双系统留下的。请问怎样删除?

    这个文件是用来存放回收bai站里面的文件的.类似du于Windows会在每个分区内创zhi建一个\RECYCLED 文件夹....它是Ubuntu里面的gnome创建的dao.你要是把它删除了,下次登 ...

最新文章

  1. 调试webservice遇到“测试窗体只能用于使用基元类型作为参数的方法”的解决办法...
  2. jquery.validate.js的使用小结
  3. 理解stl中的erase
  4. linux删除物理卷命令,如何安全的删除Linux LVM中的PV物理卷(硬盘或分区
  5. 通俗易懂,买一次西瓜就懂 Python
  6. 编写安装配置ftp-samba服务脚本
  7. java检索txt文本_lucene索引word/pdf/html/txt文件及检索(搜索引擎)
  8. 5010.有限状态机-电梯事件
  9. JVM 垃圾回收算法机制及其实现原理
  10. mysql sum 删除_如果mysql磁盘满了,会发生什么?还真被我遇到了~
  11. 如何下载mysql-java驱动jar包
  12. docker运行redis命令
  13. Linux Command diff 文件比较
  14. c语言输入任意两个数求乘积,C语言程式 从键盘输入两个小数,输出它们的和及乘积...
  15. 【学习KubeEdge】
  16. 区域卫生信息平台建设的“用友基因”
  17. Cannot read property ‘$message‘ of undefined
  18. 英语思维导图大全 阅读理解(二十一)
  19. 北理工冬令营遗留之优先队列
  20. Linux时钟管理clk

热门文章

  1. python读取dta文件并转化为dataframe
  2. 【转】算法总结,素数判断
  3. 智能手机操作系统市场份额
  4. 傅盛:猎豹持有猎户星空约34%股权 未来或获控股权
  5. TSCAN + TMODEL处理点云数据生成DEM
  6. 国家级高新区企业主要经济指标(2012-2021年)
  7. Mybatis(尚硅谷)
  8. 【四方向型】虚拟摇杆 C#代码部分(1)--基本参数与动画方法
  9. 【VRP问题】基于模拟退火遗传实现带时间窗的车辆路径规划问题
  10. 中文书籍对《人月神话》的引用(161-170本):卓有成效的CIO、核心测试过程(20211107更新)