c++ - 分配失败

标签 c++ debugging visual-studio-2005 variable-assignment

我正在 Visual Studio 2005 中调试一个大型项目的一部分,并逐行调试代码。

int speed = this->values.speed;
int ref = this->values.ref_speed;

经过第一行后,values.speed 的值为 61,但由于某种原因,speed 被赋予了值 58。在第二行之后,values.ref_speed 的值为 58,但 ref 被赋予了值值 30。

暂停时,您可以看到原始值实际上分别是 61 和 58,但存储的值不同。

是什么导致了这种行为?

最佳答案

如果头文件中值结构的定义发生更改,并且并非所有目标文件都重新编译,则可能会发生这种情况。那么你的代码在这个文件中使用的结构的“映射”可能与代码的其余部分不匹配。这可以解释为什么其中一个变量似乎具有另一个变量的值。

或者 Visual Studio .pdb 文件由于某种原因没有得到更新,Visual Studio 正在旧位置查找变量。

关于c++ - 分配失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/936320/

相关文章:

c++ - WM_PASTE Hook 不工作

c++ - 调试断言失败 : invalid iterators

c++ - 使用 Visual Studio 2005 展开小循环

c# - 如何防止在 C# 中出现异常?

c++ - Visual Studio 和 Xcode 中的 C++ 运算符重载错误

c++ - 互斥锁/解锁顺序

c++ - 如何声明模板模板参数

c++ - 使用 cmake 和 visual studio 2010 构建 yaml-cpp

java - jvm异常捕获

python - 在 PyCharm 中调试 asyncio 代码会导致绝对疯狂的不可重复错误