C++内存分配

来源:百度知道 编辑:UC知道 时间:2024/06/07 05:34:11
明白了简单的C语言程序的内存分配,但是对于C++类或者对象的分配还不是很了解,类的成员函数和成员变量是怎么分配的?

应该是这样的,类的成员分为普通数据成员和静态数据成员
普通数据成员: 成员变量, 每一个类对象都有自已的数据成员,也就是说,每一个数据成员都占内存
成员函数:是公有的,也就是说,在内存中只有一份成员函数
面对于静态成员变量,无所是成员变量还是成员函数都是归这个类所有,只占一份内存
不知道你明白了没有?

成员地址 和结构成员一样占内存。成员函数不占内存
有虚函数的还要加 vtable的 地址4 <-- 此处不同的编译器可能实现不同

强烈建议学习以下书籍,一定解决你目前的烦恼:

作者-- 书名
-----------------
候捷--《深入探索C++对象模型》
-----------------