类A 中没有生命任何成员变量与成员函数,sizeof(A)的值是1
2016-10-26 10:29
555 查看
当一个类A 中没有生命任何成员变量与成员函数,这时sizeof(A)的值是多少,如果不是零,请解释一下编译器为什么没有让它为零。
肯定不是零。举个反例,如果是零的话,声明一个class A[10]对象数组,而每一个对象占用的空间是零,这时就没办法区分A[0],A[1]…了。
运行结果:
肯定不是零。举个反例,如果是零的话,声明一个class A[10]对象数组,而每一个对象占用的空间是零,这时就没办法区分A[0],A[1]…了。
#include <stdio.h> #include <string.h> class USER { }; int main(int argc, char* argv[]) { USER *u=new USER[3]; printf("%d,%x\n",sizeof(u[0]),&u[0]); printf("%d,%x\n",sizeof(u[1]),&u[1]); printf("%d,%x\n",sizeof(u[2]),&u[2]); return 0; }
运行结果:
相关文章推荐
- 当一个类A 中没有生命任何成员变量与成员函数,这时sizeof(A)的值是多少,如果不是零,请解释一下编译器为什么没有让它为零。
- 定义一个空类型,里面没有任何成员变量和成员函数。对该类型求sizeof 结果?
- java-成员变量的属性与成员函数的覆盖
- 关于java中成员变量有默认初始化而局部变量没有
- 打印类的信息,包括类的成员函数、成员变量(只获取成员函数)-3
- 没有默认构造函数的问题, 对于类成员变量有别的类成员,则在类 构造函数中也必须对那个类成员变量进行初始化,除非那个类 成员有默认构造函数
- VC++6.0中定义一个类的对象后,用“.”访问其成员函数和成员变量时,其成员函数和成员变量没有自动弹出
- [原]Unity3D深入浅出 - 常用类的成员变量和成员函数(Tranform、Time、Random、Mathf、Input)
- 引用一个面试题:如果程序中没有任何变量引用一个外部类对象,但有变量引用其中的内部类对象,请问外部类对象是否会被垃圾回收器回收?请说明理由!
- 【Struct(结构体)杂谈之六】无既是有---没有成员变量的Struct(结构体)
- 29. 静态成员(成员变量和成员函数)
- 导出DLL 隐藏私有成员变量和成员函数 工厂方法
- Java反射打印类的信息,包括类的成员函数、成员变量(只获取成员函数)
- C#直接调用C++非托管结构体、类、成员函数、成员变量
- 注意访问器中的一个小细节,关于有访问器没有成员变量的问题
- 为什么java局部变量没有初始化就会报错,而成员变量没有初始化就不会报错?
- #500-2 成员变量和成员函数
- C++定义一个类,如果成员变量没有说明是共有还是私有那默认的是哪一个?
- 没有被实例化的类 中的 非static成员函数竟然也可以被调用。。。前提是该成员函数没有用到成员变量
- Python中定义“私有”成员变量和成员函数