/* Human.h */
#include <string>
/*
* this指当前对象的地址
*/
class Human
{
private:
char* name;
public:
Human(const char* initString); //变量若不允许函数修改,最好定义成const变量
~Human();
void getObjName();
};
/*Human.cpp*/
#include <iostream>
#include <string>
#include <string.h>
#include "Human.h"
void Human::getObjName()
{
printf("1 this = 0x%x\n", this); //此对象的地址
}
Human::Human(const char* initString)
{
std::cout << "2 call Human()" << std::endl;
name = new char[strlen(initString) + 1];
}
/*析构函数(对象被销毁时被调用,类只有一个析构函数*/
Human::~Human()
{
std::cout << "3 call ~Human()" << std::endl;
}
#include <io