0
点赞
收藏
分享

微信扫一扫

【visual studio】最佳目录组织&常见问题


.

  • ​​vs 最佳目录组织​​
  • ​​输出目录&中间目录​​
  • ​​工作目录​​
  • ​​如读入的文件目录为​​
  • ​​vs 2019查看类的内存布局​​
  • ​​在命令行添加​​
  • ​​使用freopen之后system("pause")失效​​
  • ​​在调试程序时可以使用freopen重定向输入流至文件:​​
  • ​​把输入流重定向回控制台,此时暂停有效。​​
  • ​​内存查看器 反汇编 寄存器窗口​​
  • ​​vs 2019 cpp 中已经定义了函数 h文件还是标红提示未定义函数 && 鼠标点击 F12 函数转到定义 定位不准​​

vs 最佳目录组织

输出目录&中间目录

配置属性-常规
输出目录: $(SolutionDir)bin\$(Platform)\$(Configuration)\
中间目录: $(SolutionDir)bin\intermediates\$(Platform)\$(Configuration)\

手动删除原先的文件夹

删除:
Debug
x64
/pro/pro/x64


保留:
.vcxproj.user
.vcxproj.filters
.vcxproj

重新生成项目

工作目录

如读入的文件目录为

"./a.txt"

想修改读入文件的路径,仅在调试模式下生效
如果想部署程序,或者直接双击exe运行,就要将文件放在与exe相同的目录下

配置属性-调试-工作目录

默认是:$(ProjectDir) 就是.vcxproj所在的文件目录
如果想修改就可以自己定义 ../表示向上一级目录

vs 2019查看类的内存布局

在命令行添加

/d1 reportAllClassLayout

【visual studio】最佳目录组织&常见问题_反汇编

【visual studio】最佳目录组织&常见问题_vs_02

使用freopen之后system(“pause”)失效

在调试程序时可以使用freopen重定向输入流至文件:

freopen("a.txt","r",stdin);

但这样system(“pause”)就失效了,程序一闪而过,看不到输出结果。
解决方法为在system前面加上

freopen("CON","r",stdin);

把输入流重定向回控制台,此时暂停有效。

内存查看器 反汇编 寄存器窗口

调试至断点时,
菜单栏-调试-窗口-内存-内存1/2/3/4
菜单栏-调试-窗口-反汇编
菜单栏-调试-窗口-寄存器

vs 2019 cpp 中已经定义了函数 h文件还是标红提示未定义函数 && 鼠标点击 F12 函数转到定义 定位不准

为了防止重新定义 我们常常

#ifndef XXX.H
#define XXX.H

#endif

但是在cpp文件中也这样写就会出现标题中的问题
在cpp文件中去掉即可
搞了 一下午才发现是这个原因 醉


举报

相关推荐

0 条评论