当从不同位置访问类方法时,类成员的位置会发生变化

Location of class member changes when class method is accessed from different places

本文关键字:位置 成员 变化 访问 类方法      更新时间:2023-10-16

我遇到了一个问题,类成员的位置会根据函数的运行时间而更改。

当构造函数正在运行时,成员的位置为0x008bc044。随后调用一个成员函数,并且同一成员的位置仍然是0x008bc044。稍后,成员函数将再次运行,但同一成员的位置将更改为0x008bc048。班上的所有其他成员都不会改变那里的位置。我不会把这个类转换成另一种类型。

这导致了一个问题,因为该函数现在正在读取随机数据并导致不正确的输出。

我使用的是Visual Studio 2012 11.0.60315.01更新2。

visual studio调试器的相册

您正在运行一个32位系统,有一个派生类,并显示基类的指针和派生类的指针。此外,你还有一个重新诠释或c风格的演员阵容。