vs二〇〇八bin下Debug bll Release文件 obj下的Debug bll Release文件分别

Bin目录用来存放编写翻译的结果,bin是贰进制binrary的英文缩写,因为早期C编写翻译的顺序文件都以二进制文件,它有Debug和Release多个本子,分别对应的文书夹为bin/Debug和bin/Release,这几个文件夹是默许的出口路线,大家得以由此:项目性质—>配置属性—>输出路线来修改。

 

obj是object的缩写,用于存放编写翻译进程中生成的中游暂且文件。在那之中都有debug和release(中文的意味:释放)多个子目录,分

别对应调节和测试版本和发行版本,在.NET中,编写翻译是分模块进行的,编写翻译整个完结后晤面并为2个.DLL或.EXE保存到bin目录下。

因为每一回编译时暗许都以选择增量编写翻译,即只重复编写翻译改动了的模块,obj保存每种模块的编写翻译结果,用来加快编写翻译速度。是

否采取增量编译,能够因而:项目性质—>配置属性—>高档—>增量编写翻译来设置。

 

PRoperties文件夹定义你程序集的属性 项目性质文件夹 一般唯有3个 AssemblyInfo.cs类文件,用于保存程序集的音信,如名

称,版本等,那几个音信一般与品种性质面板中的数据对应,不需求手动编写。

 

每每你会遇上DEBUG成功的本子RELEASE   就有标题,以下是主题素材的分析总括
DEBUG和RELEASE   版本差别及调节和测试相关主题材料:   
  .                   内部存款和储蓄器分配难点   
    
 一.    变量未起始化。上边包车型地铁程序在debug中运转的很好。

** thing   *   search(thing   *   something)   
                  BOOL   found;   
                  for(int   i   =   0;   i   <   whatever.GetSize();   i++)   
                      {   
ACCESS,                      if(whatever[i]->field   ==   something->field)   
                            {   /*   found   it   */   
                              found   =   TRUE;   
                              break;   
                            }   /*   found   it   */   
                        }   
          if(found)   
                            return   whatever[i];   
          else   
                            return   NULL;   
  而在release中却尤其,因为debug中会自动给变量发轫化found=FALSE,而在release版中则不会。所以尽量的给变量、类或结构初始化。     
**

**2.    数据溢出的主题材料       
    
                  如:char   buffer[10];   
                            int   counter;   
    
                lstrcpy(buffer,   “abcdefghik”);   
    
  在debug版中buffer的NULL覆盖了counter的上位,可是除非counter>1陆M,什么难题也从不。可是在release版中,counter大概被放在寄存器中,这样NULL就覆盖了buffer上面包车型大巴空间,大概正是函数的回到地址,那将导致ACCESS   E猎豹CS6RO奥德赛。   
    **


 

**  叁.   DEBUG版和RELEASE版的内部存储器分配方式是见仁见智的   。**

只要你在DEBUG版中申请       ele   为   陆*sizeof(DWO福特ExplorerD)=二四bytes,实际上分配给您的是3二bytes(debug版以3二bytes为单位分配),   而在release版,分配给你的正是贰四bytes(release版以8bytes为单位),所以在debug版中1经你写ele[6],恐怕不会有何难点,而在release版中,就有ACCESS   VIOLATE。   

 

相关文章