people.cpp

来自「这是编程之道C-C++中的源代码,很简练,可以用于相关教学和重新熟悉C-C++时」· C++ 代码 · 共 68 行

CPP
68
字号
//类CPeople的实现
#include "people.h"
#include <string >
#include <iostream>
using namespace std;

CPeople::CPeople()					//缺省构造函数,给创建的对象的每个成员赋默认值
{
	m_nAge = 20;
	m_fSalary = 3000.00f;
	m_pstrName = new char[20];		//用new操作符为字符指针m_pstrName分配空间
	strcpy( m_pstrName, "无名氏");
}

CPeople::CPeople(int age, float salary, char* name)	//带参数的构造函数
{
	m_nAge = age;
	m_fSalary = salary;
	m_pstrName = new char[20];		//用new操作符为字符指针m_pstrName分配空间
	strcpy( m_pstrName, name);
}

//拷贝构造函数,用已存在的对象来创建新的对象
CPeople::CPeople( const CPeople& AnotherPeople)  
{
	m_nAge = AnotherPeople.m_nAge;
	m_fSalary = AnotherPeople.m_fSalary;
	m_pstrName = new char[ strlen(AnotherPeople.m_pstrName) + 1];
	strcpy( m_pstrName, AnotherPeople.m_pstrName );
}

CPeople::~CPeople()			//析构函数,用来释放我们在构造函数中动态申请的内存空间
{
	if ( m_pstrName != NULL )
		delete m_pstrName;		//释放m_pstrName所占用的内存空间
}

char  *CPeople::GetName()
{
	return m_pstrName;
}

int CPeople::GetAge()
{
	return m_nAge;
}

void CPeople::SetAge( int age )
{
	if(age<=0) 
		cout<< "设置的年龄不合法"<<endl;
	else
		m_nAge = age;
}

float CPeople::GetSalary()
{
	return  m_fSalary;
}

void CPeople::SetSalary( float num )
{
	if(num<0)
		cout<<"设置的薪水数目不合法"<<endl;
	else
		m_fSalary = num;
}

⌨️ 快捷键说明

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