C++的类和对象

类成员的可访问范围类成员的函数内部访问范围:当前对象的全部属性、函数;同类其他对象的全部属性和函数。类的成员函数以外的地方,只能访问该类对象的公有成员。这里是引用#include <iostream>#include <cstring>using namespace std;//声明引用的标准输入和输出库(std)class CEmpl...
摘要由CSDN通过智能技术生成

类成员的可访问范围

  • 类成员的函数内部访问范围:
    • 当前对象的全部属性、函数;
    • 同类其他对象的全部属性和函数。
  • 类的成员函数以外的地方,只能访问该类对象的公有成员。
#include <iostream>
#include <cstring>
using namespace std;//声明引用的标准输入和输出库(std)

class CEmployee
{
    private:
		char szName[30];//名字
    public:
		int  salary;//工资
		void setName(char *name); //修改名字
		void getName(char *name); //读取名字
		void averageSalary(CEmployee e1, CEmployee e2);//平均工资
};

void CEmployee::setName(char *name)
{
	strcpy(szName, name); 
}
void CEmployee::getName(char *name)
{
	strcpy(name,szName);
}

void CEmployee::averageSalary(CEmployee e1, CEmployee e2)
{
	cout << e1.salary << endl;//访问同类中其他对象的私有成员
	salary = (e1.salary + e2.salary) / 2;
}
int main()
{
	CEmployee e,p;
	//设置私有变量的机制叫做“隐藏”,目的是强制对成员变量的访问一定要通过成员函数进行。
	//这样当成员变量的类型改变了,只需要修改成员函数。否则,所有直接访问成员变量的语句都要修改
	e.setName("Tom");
	e.salary = 600; //直接修改公开变量
	cout << e.salary << endl;//输出修改后的值
	cin >> (e.salary);
	cin >> p.salary;
	e.averageSalary(e, p); //求输入的两个变量的平均工资
	cout << e.salary << endl; //输出为平均工资
	cout << p.salary << endl; //输出刚刚输入的变量p的工资
	system("pause");

	return 0;
}

在这里插入图片描述

成员函数的重载及参数缺省

  • 类中的成员函数即可以重载,也可以缺省参数。
#include <iostream>
using namespace std;
class location
{
   private:
	 int x, y;
   public:
	   void init(int X = 5, int Y = 0);
	   void value(int X);
	   int value();
};
void location::init(int X, int Y)
{
	x = X;
	y = Y;
}
void locati
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值