一些在VS debug遇到的一些bug记录

一些在VS debug遇到的一些bug记录

  • 一、添加链接描述
    1、可能是导入的图片路径不对,可能要在绝对路径内才能导入(就是跟项目在一个文件夹跟.cpp,.h同一个文件夹)
    2、可能是给图片的内存不够
    3、可能导入文件名写错了
    4、imread()的路径名不能是有\,使用/可以正确读取。
  • 二、指针报错
    1、 忘记给指针分配空间
    2、 实例不需要特别分配空间
  • 三、公式问题
    1、 atan2与atan的区别:取值范围不同
    2、 求取dy的平方时,用pow()函数,dy ^ 2表示dy和2进行位异或操作
  • 四、Vector初始化问题
    1、 不能对同一变量多次初始化
  • 五、error LNK2019: 无法解析的外部符号
    1、 视图-属性管理器——添加附加依赖项
  • 六、错误 C1083 无法打开包括文件: “boost/shared_ptr.hpp”: No such file or directory”
    1、正确路径复制到【属性页】—【VC++目录】—【包含目录】

一些debug和release的说明

Debug选项称为调试版本,顾名思义这个选项是调试的时候使用的。这个选项的配置中,所有代码生成的优化都是关闭的,于是我们触发断点后可以通过即时/局部变量窗口来观察对应的变量。
Program Debug Database files, which allow you to follow the execution of the program quite closely in the source during run-time.
All optimizations turned off, which allows you to inspect the value of variables and trace into functions that might otherwise have been optimized away or in-lined
A _DEBUG preprocessor definition that allows you to write code that acts differently in debug mode compared to release, for example to instrument ASSERTs that should only be used while debugging
Linking to libraries that have also been compiled with debugging options on, which are usually not deployed to actual customers (for reasons of size and security
Release选项称为发布版本,这个选项的配置使得编译器可以对我们的代码进行低等级的,复杂的优化。优化后代码可能会”面目全非“,导致单步调试变得不可行,我们也无法在变量窗口中看到变量,因为我们要观察的变量可能被优化了。并且发布版本不会生成.PDB文件(.PDB文件让调试器能知汇编指令与代码行数之间的对应关系)

总之
需要调试程序时,选用Debug选项
需要程序快速运行时,选用Release选项
添加链接描述

  • 程序报ceres-debug.dll不是有效的win32程序
    解决方法:可试试清理解决方案,有可能是因为之前生成过静态库或者其他格式
    或者也可以试试: 生成->重新生成项目方案(一直错的原因很有可能是一直点的是生成项目方法,而不是重新生成项目方案)

若是遇到debug是可以编译,但是release不能编译的情况,可以通过改变代码生成的线程方式,(右键属性-C/C+±代码生成-运行库),则需要确保一个程序里所有的项目的运行库都是一致的

猜你喜欢

转载自blog.csdn.net/qq_41718859/article/details/115841100