博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
VC++ 编译环境设置 学习之路vs2005
阅读量:7056 次
发布时间:2019-06-28

本文共 699 字,大约阅读时间需要 2 分钟。

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的作用》一文。

转载地址:http://pcgol.baihongyu.com/

你可能感兴趣的文章
excel表格筛选怎么做
查看>>
汇编随笔(第二章 寄存器)
查看>>
ArcGIS遍历区域内要素的属性(python)
查看>>
Linux 性能监测:Memory
查看>>
优化屏障和内存屏障
查看>>
Maven代理设置
查看>>
"Mac OS X"想要进行更改。键入管理员的名称和密码以允许执行此操作("Mac OS X"想使用系统钥匙串)...
查看>>
hdu2021 11页水题
查看>>
iOSApp版本更新
查看>>
ios自动布局实现动画
查看>>
.NET签名和重载
查看>>
Xamarin引用第三方包错误解决方法
查看>>
Beta 冲刺 (2/7)
查看>>
CSS的小三角
查看>>
git下载和上传项目
查看>>
弄懂flex布局
查看>>
Java中获取文件大小的正确方法
查看>>
虚拟机的静态内部 IP 地址
查看>>
Azure HDInsight与Hadoop周边系统集成
查看>>
怎样将BizTalk服务器应用程序和Service Bus Queues 和 Topics整合起来
查看>>