⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 demo_operator_05.cpp

📁 对于一个初涉VC++的人来书
💻 CPP
字号:

//************************************************

# include <iostream.h>
# include <string.h>

class Name
{
public:
	Name() { pName=NULL; } //默认构造函数
	Name(char * pN) { copyName(pN); } //构造函数
	Name(Name & s) { copyName(s.pName); } //拷贝构造函数
	~Name() { deleteName(); } //析构函数
	Name & operator=(Name & s) //赋值运算符
	{
		deleteName();
		copyName(s.pName);
		return *this;
	}
	void display(Name & s)
	{
		cout<<s.pName<<endl;
	}
private:
	void copyName(char * pN);
	void deleteName();
	char * pName;
};

void Name::copyName(char * pN)
{
	pName=new char[strlen(pN)+1];
	if(pName)
	{
		strcpy(pName,pN);
	}
}

void Name::deleteName()
{
	if(pName)
	{
		delete [] pName;
	}
}

void main()
{
	Name s("Sam"),t("Ted");

	t.display(t);
	t=s; //赋值
	t.display(t);
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -