一、C++ 类对象的内存存储方式
1、C 语言内存四区回顾
操作系统 将 C 代码 分为
4
个区 , 由上到下 : 堆区 , 栈区 , 全局区 , 代码区 ;
堆区 : 开发者负责分配释放内存 ,...; 程序执行结束后由操作系统释放 ;
常量区 : 存放 字符串常量 和 其它常量 , 程序结束后由 操作系统释放 ;
代码区 : 存放 函数的 二进制代码 ;
2、C++ 类对象内存结构
C++ 类对象内存结构...面向对象 的底层 , 也是通过 C 语言实现的 ;
3、C++ 编译器将 C++ 类 转为 C 语言代码 分析
C++ 编译器 将 C++ 类 的 成员变量 和 成员函数 进行分开定义 ;
普通成员变量存储...;
普通成员方法存储 :
Test 类中的成员函数 getI , 转为 C 语言后 , 方法名变为 类名_成员函数名 , 即 Test_getI ;
函数名 转换完毕后 , 还需要解决一个问题 , 多个对象都需要调用该...++ 类成员函数有
n
个参数 , 那么 C++ 编译器将其转为的 C 语言函数就有
n + 1
个参数 ;
静态成员函数 : C++ 类中的 静态函数 转为 C 语言函数 ;
函数名 的 转换是一样的