我在Visual Studio 2013上遇到了一个奇怪的行为。我有一个变量CZipArchive zip
,由于某种原因,我的项目的行为是错误的。
当我获取其地址(&zip
- > 0x0018fae0
)并进行显式内存引用时,值是正确的。见下图:
当我检查成员&zip.m_bCaseSensitive
的地址时,地址为0x0018fb00
,但如果我检查相同属性的地址,则使用显式地址代替变量zip (*(CZipArchive*)(0x0018fae0)).m_bCaseSensitive
,地址为0x0018faf0
。
正确的值是使用显式内存地址并使用zip变量的值,该值是错误的。
为什么会发生这种情况?