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