以vs2012为例
1.解决方案
一个解决方案(solution)由多个项目(project)组成,每个项目生成不同的产品(lib,dll,exe),最终组合成一个完整的产品。
如上图libtest项目产出一个静态库文件,main项目链接libtest.lib,生成最终可执行程序。
2.项目依赖关系和生成顺序
通过这两者可控制项目的生成顺序
3.项目属性
框出了一些常用的项目属性,点击会在界面下面有说明
4.用户宏(User Macro)
上图中的$(xxx)是宏,包括系统环境变量和VS内部宏,以及用户宏。
查询时,随便选一个编辑
上图中$(SolutionDir)是解决方案目录,就是xxx.sln文件所在的目录,这很有用,一般都给把相关文件(代码,资源,项目)放一目录下。如
如果所有的目录都由$(SolutionDir)的组合生成,复制slntest目录到其它地方,也不用改动就可以打开sln,生成。
添加用户宏可以定义自己的$(xxx)
增加了一个slntest后,双击打开
其它项目也要用到这个属性页的话,选择“添加现有属性页”就可以了
5.编辑相关
安装visual assist
5.1 行缩进
选中多行(不选则是当前行)+tab
shift+tab 反缩进
5.2 行删除ctrl+L
5.3 撤销ctrl+z,重复ctrl+y
5.4 行跳转ctrl+g
5.5 打开文件shift+alt+o
5.6 转到定义F12
5.7 光标位置跳转
ctrl+- 向后
ctrl+shift+- 向前
5.8 强制智能提示ctrl+j
5.9 强制智能提示函数参数 ctrl+shift+空格
5.10 注释/反注释 ctrl+k,ctrl+c / ctrl+k,ctrl+u (最好改成方便点的,ctrl+/和ctrl+shift+/)
5.11 文件切换ctrl+tab,重复在“活动文件”中切换,可以通过方向键选其它活动窗口
5.12 查找
ctrl+i 或 ctrl+f 在本文件是查找,F3下一个,shift+F3上一个
ctrl+shift+f 全局查找
5.13 替换
ctrl+h 本文件
ctrl+shift+h 全局
5.14 当前文件函数列表(可输入快速定位)
alt+m
5.16 解决方案管理器操作
ctrl+tab,方向选"解决方案管理器"
左键,打叠
右键,展开
enter,打开文件
可以快速输入以定位到文件
ctrl+tab,返回到编辑器
5.16 在编辑中输入
ctrl+[,s
会在“解决方案”中定位当前文件
5.17 查找结果操作
ctrl+tab 切到“查找结束”
ctrl+上键或下键,滚动查看结果,不会切编辑器
enter跳转到结果文件行
5.18 插入新行
ctrl+enter 当前行上一行插入
ctrl+shift+enter 当前行下一行插入
5.19 调试
F5 启动
F11 逐句
F10 逐过程
6.生成事件
如要把项目生成的dll,lib等复制到指定目录,可以用到“生成事件”
常用的路径宏
$(SolutionDir) 解决方案目录,.sln文件所在目录,启动vs时生成,如E:\code\slntest\
$(SolutionExt) .sln
$(SolutionName) 解决方案名 如slntest
$(SolutionFileName) =$(SolutionName)$(SolutionExt) 如slntest.sln
$(SolutionPath) 解决方案文件完整文件路径 = $(SolutionDir)$(SolutionFileName) 如E:\code\slntest\slntest.sln
Project也有相关的Dir,Ext(.vcxprop),Name,FileName,Path
$(OutDir) 输出目录
$(TargetName) 目标文件名
$(TargetExt) 目录扩展名
所以完整目标路径是(没有$(TargetPath)...)
$(OutDir)$(TargetName)$(TargetExt)
7.预编译宏
如果只是想增加宏(如#define ABC)可以在“预处理器定义”里添加
如果要设置宏的值(如#define ABC 123)则在"其它选项“里添加