/*********************************************************************************************
程序功能:
C++中类对象本质的---探究
实现结果:
1--实验结果说明C++中的类对象和Java语言中的类对象----不是一回事
2--java中的类对象是引用类型---相当于一个指针,而C++中的类对象不是一个指针类型
地点时间:
陕西师范大学 2016.4.21
作者信息:
九月
**********************************************************************************************/
#include<iostream>
using namespace std;
//【1】Person类的定义
class Person{
public:
Person(int id,int age);
~Person();
private:
int id;
int age;
};
//【2】Person类中成员函数的实现
Person::Person(int id,int age)
{
this->id=id;
this->age=age;
cout<<"我是Person类的构造函数"<<endl;
cout<<"年龄:"<<this->age<<endl;
cout<<"姓名:"<<this->id<<endl;
}
Person::~Person()
{
cout<<"我是Person类的析构函数,我在类对象生命周期结束时进行调用!"<<endl;
}
int main(int argv,char** argc)
{
//【1】对象指针变量--xiaoming这是一个指针变量,它只有4个字节的存储空间(32位机器),用来存储new关键字所开辟空间的首地址
Person* xiaoming=new Person(1990,20);
cout<<sizeof(xiaoming)<<"字节"<<endl;
//【2】类对象变量,累就相当于一个数据类型,而wangming就是一个类型变量,它的大小由这个类中的数据成员所占空间的大小决定
Person wangming=Person(199,25);
cout<<"由于Person这个类中只有两个整形变量,所以,它的类对象内存空间的大小应该是8个字节"<<sizeof(wangming)<<"字节"<<endl;
system("pause");
return 0;
}
程序的运行结果如下所示: