c++ - 在方法激活时具有两个不同实例的对象

标签 c++ visual-studio-2010 debugging

标题不是很清楚,如果有人有更好的建议请告诉我。 现在开始做生意: 我正在激活一个类的方法。

m_someObject.Clear();

问题是,当我在调用之前查看 m_someObject 的地址时,我发现它位于某个地址,当我进入 Clear 方法时通过调试器,我得到 this 变量位于另一个地址。 结果是,从 Clear 方法返回后,它似乎没有受到影响
m_someObject 调用它的实例。 有谁知道什么会导致这种行为? 使用 Microsoft Visual Studio 2010 64 位。

最佳答案

可能您将 m_someObject 作为值传递给其他一些函数(从而获得一个拷贝)并仅在拷贝上执行 Clear()。这样您就不会注意到原始对象的变化。

关于c++ - 在方法激活时具有两个不同实例的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10911102/

相关文章:

c++ - 在 QPlainTextEdit 的第 80 列画一条线

c++ - CrtDbgBreak 问题

python - 在Python调试器中中断成员函数

java - 编写 Eclipse Java 调试器脚本?

android - 启用 Android 支持库调试标志的最佳方式

C++ int 赋值不起作用

c++ - 我的静态 map 总是空的

c++ - 在 linux 中如何保证子进程在父进程退出之前被杀死?

c++ - 有没有办法使用一个文件句柄监视千个目录

c++ - 从 Visual Studio Express 迁移到 Netbeans。 #include <dwmapi.h> 不工作