博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
c++, class的大小
阅读量:5457 次
发布时间:2019-06-15

本文共 1464 字,大约阅读时间需要 4 分钟。

 

不为类、对象的函数分配空间;

在类中如果有virtual声明的虚函数,则会隐藏一个指针,该指针指向虚函数表,这对于纯虚函数也是一样;

对于虚继承,还有一个指向父类的指针,该指针为指向虚基类的指针(Pointer to virtual base class)。

 

#include "stdafx.h"#include 
using namespace std;#include "t1.h"class TNULL{};class Ti{ int i;};class Tic{ int i; char c;};class Tf{ void f(void){}};class T_vf{ virtual void f(void){}};class Tif {public: void set(int x) {i = x;}private: int i;};class Ti_vf {public: virtual void set(int x) {i = x;}private: int i;};class Ti_v0f {public: virtual void set(int x) = 0;private: int i;};class Ti_sf { int i; static void sf(void){}};class TT{ TT(){}};class TxT{ ~TxT(){}};class TTT{ TTT(){} ~TTT(){}private: Tif* m_pTif;};class TTTFFF{public: TTTFFF() { m_pTif = new Tif; m_pTif->set(0); } ~TTTFFF(){ delete(m_pTif); m_pTif = 0; } void f1(void){} void f2(void){} void f3(void){}private: Tif* m_pTif;};class TTT_VFFF{public: TTT_VFFF() { m_pTif = new Tif; m_pTif->set(0); } ~TTT_VFFF(){ delete(m_pTif); m_pTif = 0; } virtual void f1(void){} virtual void f2(void){} virtual void f3(void){}private: Tif* m_pTif;};void t1(void){ cout<<"sizeof(char) = "<
<

 

 

扩展:

1.   http://www.cnblogs.com/luxiaoxun/archive/2012/09/01/2666395.html

2.   http://blog.csdn.net/haoel/article/details/1948051

转载于:https://www.cnblogs.com/mylinux/p/4725637.html

你可能感兴趣的文章
ZeroMQ接口函数之 :zmq_term - 终结ZMQ环境上下文(context)
查看>>
js获取倒计时
查看>>
loadrunner安装过程中的,注册表问题
查看>>
git push失败the remote end hung up unexpectedly
查看>>
POJ3087 Shuffle'm Up 简单模拟
查看>>
Django中数据的增删改查
查看>>
iOS模拟器发生了崩溃,去哪找Crash Log
查看>>
[支付宝]即时到账接口对接总结
查看>>
夺命雷公狗-----React---15--三元运算符
查看>>
元首的愤怒 SharePoint Apps
查看>>
CSS
查看>>
两个DataGrid垂直滚动条同步滚动
查看>>
RPG的错排
查看>>
Java 7之基础 - 强引用、弱引用、软引用、虚引用
查看>>
位运算
查看>>
微软源代码管理工具TFS2013安装与使用图文教程
查看>>
JAVA中获取当前运行的类名,方法名,行数
查看>>
Nginx+PHP-FPM的域Socket配置方法
查看>>
集成通用Mapper
查看>>
SQL单表查询
查看>>