zoukankan      html  css  js  c++  java
  • VC++ 编译环境设置 学习之路vs2005

    VS2005环境为例

     
    一 C/C++设置
    1.调试信息格式:
    a.禁用
    b.C7 兼容(/Z7)
     c.程序数据库(/Zi)
      d.用于“编辑并继续”的程序数据库(/ZI)
      e.<从父级或项目默认设置继承>
     
    疑问:/EDITANDCONTINUE:这个功能的原理在于调试时将所有函数的起始地址放到一个ILT(incremental link table)内存中,这样每个函数修改时不会影响到其它函数的地址或者说影响的机会很小。此处与d选项的关系是什么呢?为何在VS2005中没有找到单独的/EDITANDCONTINUE这个编译选项呢?
     
    2.预编译头:
      a.不使用预编译头
      b.创建预编译头(/Yc)
      c.使用预编译头(/Yu)
      d.<从父级或项目默认设置继承>
     
      预编译头是很多C/C++编译器使用的技术,其目的是用来减少编译的时间。
      我们知道C/C++的头文件是通过#include这样的语句被包含在源文件中的,有些头文件很大,比如windows.h,每次编译都需要很长时间,为了节约时间,编译器可以把这些头文件处理成预编译头,它是一种编译器可以更快处理的中间形式,常见的后缀名是.pch和.gch。
      举个例子,比如源文件game.cpp包含了math.h,当VC++第一次编译game.cpp的时候,并且打开了预编译头的选项,则编译器会生成预编译头math.pch,下一次编译game.cpp的时候,编译器可以不编译math.h而是直接使用math.pch,以节约编译时间;
     
    二 连接器
    1.增量链接 /INCREMENTAL :
      参见本博客中的《link incrementally的作用》一文。
  • 相关阅读:
    Hello World!
    Nginx加权轮询算法
    git常用命令
    linux命令
    sql 表值函数与标量值函数
    数据查询和操纵时连接的打开状态
    插入一条和上一条数据关联的数据
    C# 输出24小时格式时间
    c#中用sql存储过程
    AndroidManifest.xml文件解析
  • 原文地址:https://www.cnblogs.com/linyawen/p/2441718.html
Copyright © 2011-2022 走看看