静态成员定义和对象传递

#include<iostream>
using namespace std;
class tstudent {
	static float m_classmoney;
public:
	tstudent(float n)
	{
		symoney = n;
	}
	void initstudent(char name[])
	{
		name[0] = 'A';
		name[1] = 'B';
		name[2] = 'C';
	}
	void expendmoney(float money)
	{
		symoney = sum-money;
	}
	float smoney()
	{
		return symoney;
	}
	void showmoney(tstudent ob)
	{
		ob.expendmoney(ob.smoney());
		
		cout << "班费还剩余:" << ob.smoney() << endl;
	}
private:
	float symoney;

};
float tstudent::sum = 1000;
int main()
{
	tstudent A(50);
	A.showmoney(A);
	A.smoney();
	tstudent B(98.5);
	A.showmoney(B);
	B.smoney();
	tstudent C(500.53);
	A.showmoney(C);
	C.smoney();
	return 0;
}

本次上机实验是对c++类与对象的进一步认识,使用了定义静态成员和对象传递。对象传递有三种方法,分别是使用对象作为函数参数、使用对象指针作为函数参数和使用对象引用作为函数参数,这次上机使用了第一种方法。我在进行定义静态成员的时候,出现了显示静态函数成员没有被定义的错误提示,是由于一开始的理解错误把静态成员函数定义在了类的私有成员里,于是出现了定义与调用矛盾的现象。还有就是使用对象作为函数参数的方法,任何函数对对象的修改并不能影响函数本身,所以当需要对象改变的时候,可以用其余两种方法,以达到“实时”的效果。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值