c++虚表 内存分配
来源:互联网 发布:sql查询重复值 编辑:程序博客网 时间:2024/06/10 18:32
#include <iostream>
#include <stdlib.h>
#include <windows.h>
using namespace std;
class A{
char a;
public:
A(){a = 'a';cout<<"is A construct function"<<endl;}
~A(){cout<<"is A Unconstruct function"<<endl;}
virtual void f(){cout<<"im A v_table"<<endl;}
};
class A1{
char b;
public:
A1(){b = 'b';cout<<"is A1 construct function"<<endl;}
~A1(){cout<<"is A1 Unconstruct function"<<endl;}
virtual void f(){cout<<"im A1 v_table"<<endl;}
};
class B:public A,public A1{
char c;
public:
B(){c = 'c';cout<<"is B construct function"<<endl;}
~B(){cout<<"is B Unconstruct function"<<endl;}
virtual void f1(){cout<<"im B v_table"<<endl;}
};
typedef void (*Fun)(void);
int main()
{
B b;
char *p = (char *)(&b);
cout<<sizeof(b)<<endl;
Fun pFun = NULL;
pFun = (Fun)*((int*)*(int*)(&b));
pFun();
pFun = (Fun)*((int*)*(int*)(&b)+1);
pFun();
pFun = (Fun)*((int*)*(int*)(p+8));
pFun();
for(int i = 0;i<16;i++)
cout<<"i:"<<i<<" "<<(*(p+i))<<endl;
system("pause");
return 1;
}
- c/C++内存分配
- C内存分配
- C语言内存分配
- C/C++内存分配
- C/C++内存分配
- c内存分配
- C/C++内存分配
- C程序内存分配
- c 内存分配
- C语言内存分配
- C内存分配
- C的内存分配
- c语言内存分配
- c内存分配
- C语言-内存分配
- C语言内存分配
- c程序内存分配
- C/C++内存分配
- js隐藏a标签超链接
- NAT功能与分类
- android surfaceflinger研究----Surface机制
- Linux下创建安装程序的快捷方式
- Android应用 程序框架设计方法
- c++虚表 内存分配
- UniSwf使用的基础教程
- 新版adt打包问题
- mysql update完root用户密码后,再登陆报错”Access denied for user 'root'@'localhost' (using password: YES)“的解决方法
- linux远程拷数据
- :nth-child 和 :nth-type-of 的区别
- 采用MVC的设计思想对用户故事进行任务分解
- 设计模式之状态模式
- IOS疯狂基础之MessageUI—短信