一、C++ 类对象的内存存储方式
1、C 语言内存四区回顾
操作系统 将 C 代码 分为
4
个区 , 由上到下 : 堆区 , 栈区 , 全局区 , 代码区 ;
堆区 : 开发者负责分配释放内存 ,..., 都存储在 代码段 中 ;
C++ 面向对象 的底层 , 也是通过 C 语言实现的 ;
3、C++ 编译器将 C++ 类 转为 C 语言代码 分析
C++ 编译器 将 C++ 类 的 成员变量 和...成员函数 进行分开定义 ;
普通成员变量存储 :
对于 普通的 成员变量 , 存放在 结构体 中 ,
原来的 类名为 Test , 普通成员变量为 mI , C++ 编译器会将类转为 struct 结构体...语言函数 ;
参数个数 : 将 C++ 类成员函数 转为 C 语言函数 后 , 对应的 C 语言函数 的第一个参数必须是 指定的类型指针参数 , 也就是说 , 假如 C++ 类成员函数有
n
个参数..., 那么 C++ 编译器将其转为的 C 语言函数就有
n + 1
个参数 ;
静态成员函数 : C++ 类中的 静态函数 转为 C 语言函数 ;
函数名 的 转换是一样的 , Test 类中的成员函数