目录
- 一、程序及输出
- 1.1 程序检验对象
- 1.2 开发人员工具查看对象模型
- 1.2.1 查看对应工程目录文件
- 1.2.2 查看对象模型
- 二、分析与总结
一、程序及输出
1.1 程序检验对象
父类中私有属性,子类访问不到,是由编译器给隐藏了,但仍然在子类对象模型中
#include<iostream>
using namespace std;
class Base
{
public:
int m_A;
protected:
int m_B;
private:
int m_C; //父类中私有属性,子类访问不到,是由编译器给隐藏了
};
class Son : public Base
{
public:
int m_D;
};
void test01()
{
cout << "size of Son = " << sizeof(Son) << endl; // 结果为16
}
int main(){
test01();
system("pause");
return EXIT_SUCCESS;
}
输出:
1.2 开发人员工具查看对象模型
打开 工具–命令行–开发人员命令提示
1.2.1 查看对应工程目录文件
查看对应工程目录文件:dir
1.2.2 查看对象模型
查看对象模型: cl /d1 reportSingleClassLayout+类名 类对应文件
比如查看Son类对象模型: cl /d1 reportSingleClassLayoutSon test.cpp
二、分析与总结
父类中私有属性,子类访问不到,是由编译器给隐藏了,但仍然在子类对象模型中
查看对应工程目录文件:dir
查看对象模型:cl /d1 reportSingleClassLayout+类名 类对应文件