//类的对象管理模型初讲

#include<iostream>
using namespace std; class PointA{
private:
int x;//占据4个字节大小的内存空间
int y;//占据4个字节大小的内存空间
int z;//占据4个字节大小的内存空间
};//总共占据12个字节 class PointB{
public:
PointB(int _x, int _y,int _z){
x = _x;
y = _y;
z = _z;
}
void GetX(){
cout << x<< endl;
}
void GetY(){
cout << y << endl;
}
private:
int x;
int y;
int z;
static int c;
}; void ProtectA(){
cout << "PointA在内存中的大小是" << sizeof(PointA)<<"个字节" << endl;//打印 12个字节
cout << "PointB在内存中的大小是" << sizeof(PointB) << "个字节" << endl;//打印 12个字节
//运行结果表明 类的静态成员变量,成员函数 不在类中占据内存空间
//本质上,c++编译器对类对象中的成员变量 成员函数 静态成员变量是分开存储的
//非静态成员变量:存储于对象中,与struct变量有相同的内存布局和字节对齐方式
//静态成员变量:存储在全局区
//成员函数(包括静态成员函数):存储在代码区
//C++编译器对普通成员函数的内部处理请看图1
//c++中类其实是C语言中的结构体(存储数据)+全局函数组成的
//c++编译器对类里函数做了特殊处理,每个函数都会隐式传递一个对象指针(本质上就是个结构体指针),
//就是通过这个对象指针c++编译器才能找到每个对象里的成员属性
//对于静态成员函数,c++编译器不会为这个函数传递一个对象指针,因为静态成员函数是属于类的 } /*
总结:
1、C++类对象中的成员变量和成员函数是分开存储的。C语言中的内存四区模型仍然有效!
2、C++中类的普通成员函数都隐式包含一个指向当前对象的this指针。
3、静态成员函数、静态成员变量属于类
静态成员函数与普通成员函数的区别
静态成员函数不包含指向具体对象的指针
普通成员函数包含一个指向具体对象的指针 */ void main(){
ProtectA();
system("pause");
}

最新文章

  1. Java基础-服务器的发送和接收
  2. SVN外链
  3. 使用css3制作蚂蚁线
  4. linux集群运维工具:clustershell和pssh
  5. 配置ASP.NET Web应用程序, 使之运行在medium trust
  6. C++实现VPN工具之常用API函数
  7. js 和 c# 方法互调
  8. android绘画折线图二
  9. Swift入门篇-基本类型(1)
  10. wamp不能使用phpmyadmin,提示“You don&#39;t have permission to access /phpmyadmin/ on this server.” 转载
  11. 桌面浏览器实现滑动翻页效果(Swiper)
  12. 软测试综述——PV操作
  13. hdu1286 寻找新朋友 (欧拉功能)
  14. UITableView移除某行的分割线和让分割线宽度为cell的宽度
  15. python2与python3的区别 ,小数据池 bytes 类型
  16. 爬取知名社区技术文章_setting_5
  17. Go 语言数组
  18. oracle性能优化之awr分析
  19. fiddler学习总结--通过Fiddler模拟弱网进行测试
  20. Spring Developer Tools 源码分析:二、类路径监控

热门文章

  1. 【转】TCP(协议号6)的方方面面
  2. Python continue
  3. [Exception JavaWeb 1] - Cause: com.microsoft.sqlserver.jdbc.SQLServerException: &#39;@P2&#39; 附近有语法错误。
  4. 错误代码: 1066 Not unique table/alias: &amp;#39;c&amp;#39;
  5. 【Linux】df命令
  6. dojo 五 配置dojoconfig
  7. 使用RMAN方式清除
  8. Java 的抽象特性:抽象类与接口深度解析
  9. SuperMap iObjects for Spark使用
  10. Android系统示例分析之AndroidBeamDemo