在C++中,静态变量和全局变量存储在全局内存区,所以我主要介绍以下普通的局部类对象的存储位置。
普通局部类对象根据定义的方式不同,会存储在不同的内存区域。主要有两种情况,一种是new关键字定义,一种是普通定义。
第一种:普通定义
图1—示例程序
图1-ollydbg证明
图2-示例程序
图2-ollydbg证明
第二种:new关键字定义
图3-示例程序
图3-ollydbg证明
图三中此时eax表示类对象在堆区中的地址,右下角为栈顶指针0021FB3C。
在C++中,静态变量和全局变量存储在全局内存区,所以我主要介绍以下普通的局部类对象的存储位置。
普通局部类对象根据定义的方式不同,会存储在不同的内存区域。主要有两种情况,一种是new关键字定义,一种是普通定义。
第一种:普通定义
图1—示例程序
图1-ollydbg证明
图2-示例程序
图2-ollydbg证明
第二种:new关键字定义
图3-示例程序
图3-ollydbg证明
图三中此时eax表示类对象在堆区中的地址,右下角为栈顶指针0021FB3C。