项目经验-VS2019项目常用的属性配置

常用宏定义

宏名称 功能
$(SolutionDir) 解决方案目录路径
$(ProjectDir) 项目所在文件路径
$(ProjectName) 项目名称
$(Configuration) 当前配置器名称,如果是Debug,$(Configuration)为“Debug”
$(TargetPath) 包含可执行文件的路径,比如:“C:\Code\TestVTK\Debug\TestVTK.exe”

在VS中比较常用的配置就是解决方案目录,项目目录,项目名称,根据这些配置项,可以设置相对路径,当从Git或SVN上下载解决方案,就不用配置头文件和库的目录;也避免了在代码中使用"./“和”…/"这些相对路径;

常用项目属性

常规

项目经验-VS2019项目常用的属性配置
这里常用的项是:
1.输出目录:目标文件所在的文件目录;
2.中间目录:生成目标文件所生成的中间文件所在的文件路径;
3.目标文件名:生成目标文件的文件名,
  如果是应用程序就是文件名.exe
  如果是静态库就是文件名.lib
  如果是动态库就是文件名.dll
4.配置类型:有:应用程序(.exe);动态库(.dll);静态库(.lib);
5.平台工具集:VS的编译器版本,一般从VC6.0到当前最新的VS2019,对应的是V60-V142;不同VS版本编译出来的项目使用的平台工具集不同;如果你安装的VS不支持之前的项目,就需要安装Daffodil.ENU.msi或者对应的开发环境;

高级

项目经验-VS2019项目常用的属性配置
这里常用的项有:
1.MFC的使用
    使用标准Windows库:使用默认Windows提供的基本库;
    在静态库中使用 MFC:使用window提供的静态库;对应了C++生成方式为:MT/MTd;
    在共享 DLL 中使用 MFC:使用window提供的动态库;对应C++生成方式为:MD/MDd;
2.字符集
    使用 Unicode 字符集:代码中使用Unicode编码;
    使用多字节字符集:代码中使用多字符编码;一般情况下,程序都是用的是多字符字符集;
3.全程序优化:基本上不会修改,默认无全程序优化即可;

调试

用于调试程序时使用的配置选项
项目经验-VS2019项目常用的属性配置
1.命令:包含可执行文件的全路径,比如当前项目生成动态库dll,那么使用这个dll的exe的路径为:C:\Code\TestVTK\Debug\TestVTK.exe;
2.命令参数:在运行可执行文件时,附加的命令参数,一般是控制台程序,在其后附加命令参数为main函数的char *argv;
3.工作目录:在“命令”配置项中,去掉可执行文件的文件名就是工作目录,也就是可执行文件所在目录;

VC++ 目录

用于配置项目依赖的第三方库的头文件和库文件所在文件夹位置;
项目经验-VS2019项目常用的属性配置
1.包含目录:用于搜索使用第三方库的include文件夹;
2.库目录:用于搜索使用第三方库的lib文件夹;

C/C++

项目经验-VS2019项目常用的属性配置

常规

1.附加包含目录:功能同“包含目录”,用于放置使用第三方库的头文件目录,或者放当前解决方案目录或项目目录,这样在代码中可以避免使用相对路径来对应头文件;
2.警告等级:可以选择编译器对代码错误的严格程度;
3.将警告视为错误:将所有编译器警告都视作错误;

优化

项目经验-VS2019项目常用的属性配置
1.优化:在Debug模式和Release模式下,不同设置;Debug下使用“已禁用”;Release模式下使用“最大优化(优选速度) (/O2)”;

预处理器

项目经验-VS2019项目常用的属性配置
1.预处理器定义:用于控制代码中的宏判断,就可以使用增加预处理器,控制代码中的开启;

代码生成

项目经验-VS2019项目常用的属性配置
1.启用C++异常:如果想要捕获C语言异常,需要使用”是,但有 SEH 异常 (/EHa)“;
2.运行库:与MFC的使用配合使用,参照MFC的使用的说明;
    MT是静态编译,将项目使用的库链接到生成文件中,不需要使用外部提供的dll;
    MD是动态编译,在使用目标文件,需要额外提供dll等依赖文件;
3.结构成员对齐:结构体或类成员的对齐方式,如果写dll或lib,就需要和调用的exe的对齐方式保持一致,这样才能正确解析结构体内容;

预编译头

项目经验-VS2019项目常用的属性配置
1.预编译头:可以选择"使用 (/Yu)";“创建 (/Yc)”;“不使用预编译头”;使用预编译头可以快速编译程序;不过在第三方的库中一般不适用预编译头;
2.预编译头文件:要预编译的头文件名;

链接器

项目经验-VS2019项目常用的属性配置

常规

1.输出文件:同输出目录+输出文件名;
2.附加库目录:同库目标,是搜索依赖lib的文件夹路径;

输入

项目经验-VS2019项目常用的属性配置
1.附加依赖项:项目依赖的lib文件名称;
2.忽略所有默认库忽略特定默认库:一般情况不使用,在出现链接报错时,才会修改;

调试

项目经验-VS2019项目常用的属性配置
1.生成程序数据库文件:用来放在调试的可执行程序的文件夹下,用来Debug调试;

系统

项目经验-VS2019项目常用的属性配置
1.堆保留大小:指定虚拟内存中堆分配的合计大小。默认值时1MB;
2.堆栈保留大小:指定虚拟内存中堆栈分配的合计大小。默认值时1MB;
当提示栈溢出时,要么修改代码,减少栈空间使用;要么扩大栈空间;

高级

项目经验-VS2019项目常用的属性配置
1.目录计算机:用来控制生成32位程序或者64位程序;

上一篇:浅谈,vs2019 c++ ,c#, opencv,matlab dll调用,调试问题


下一篇:使用win32 api和C++开发的软件光栅化渲染器。