您好、欢迎来到现金彩票网!
当前位置:热购彩票app下载 > 公有成员 >

C++中的成员变量和成员函数在内存中是怎么存储的?与结构体中变

发布时间:2019-08-14 19:56 来源:未知 编辑:admin

  C++中的成员变量和成员函数在内存中是怎么存储的?与结构体中变量和函数的存储相同吗?

  C++中的成员变量和成员函数在内存中是怎么存储的?与结构体中变量和函数的存储相同吗?

  定义了一个类MyClass,类中有成员变量inta;floatb;staticintc;还有成员函数:intfun1()floatfun2()staticintfun3()……我想知道这些普通的成员函数、变量,还有静态成员函数、变量,他...

  我想知道这些普通的成员函数、变量,还有静态成员函数、变量,他们在内存中是怎么存储的~~

  那么, MyStruct myStruct;又是怎么存储的?定义a,b时,交换顺序,会有影响吗?展开我来答

  可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。

  static int c; //处于静态数据内存区,程序运行后同一分配,与类的实例化与否无关

  但是对于含有虚函数的类来说,实例化后的对象中必定会有一个指向虚函数表的指针,

  MyClass *myClass; //在栈上分配一个指针,但你不知道它指向哪里,因为没有给它赋值。

  完成了内存的分配,就可以通过这个指针访问int a,float b,以及fun1()之类的成员变量了。

  占用空间大小的话class和struct应该是相同的,不过这里有个字节对齐的概念

  简单点,非静态成员变量占用空间,成员函数(无论是否是静态的)则不占用空间:

  c++中struct和class在计算对象大小时你就不用区别了,计算方法一样。

http://e-ndicus.com/gongyouchengyuan/1101.html
锟斤拷锟斤拷锟斤拷QQ微锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷微锟斤拷
关于我们|联系我们|版权声明|网站地图|
Copyright © 2002-2019 现金彩票 版权所有