C++编程问题:统计银行存款(急急急!!!)
统计银行存款问题设计一个程序,其中有3个类,即CBank,BBank和GBank,分别为中国银行类,工商银行类和农业银行类。每个类都包含一个私有数据balance,用于存...
统计银行存款问题
设计一个程序,其中有3个类,即CBank,BBank和GBank,分别为中国银行类,工商银行类和农业银行类。每个类都包含一个私有数据balance,用于存放储户在该行的存款数,另有一个友元函数total用于计算储户在这3家银行中的总存款数。
解析:
CBank,BBank和GBank3个类中均包含私有数据balance,以及其输入输出的相关函数。由于需要从外部对3个类的私有数据balance进行访问,因此需要设计一个友元函数total(),这样通过友元函数的访问属性,即可统计出3家银行中的总存款数。 展开
设计一个程序,其中有3个类,即CBank,BBank和GBank,分别为中国银行类,工商银行类和农业银行类。每个类都包含一个私有数据balance,用于存放储户在该行的存款数,另有一个友元函数total用于计算储户在这3家银行中的总存款数。
解析:
CBank,BBank和GBank3个类中均包含私有数据balance,以及其输入输出的相关函数。由于需要从外部对3个类的私有数据balance进行访问,因此需要设计一个友元函数total(),这样通过友元函数的访问属性,即可统计出3家银行中的总存款数。 展开
1个回答
展开全部
这个有多个类,个人认为使用友元类还比较合理~
一个类是另一个类的友元类,则这个类的所有成员函数都是另一个类的友元函数~
参考:
/*
设计一个程序,其中有3个类,即CBank,BBank和GBank,分别为中国银行类,工商银行类和农业银行类。
每个类都包含一个私有数据balance,用于存放储户在该行的存款数,另有一个友元函数total用于计算储户在这3家银行中的总存款数。
解析:
CBank,BBank和GBank3个类中均包含私有数据balance,以及其输入输出的相关函数。由于需要从外部对3个类的私有数据balance进行访问,
因此需要设计一个友元函数total(),这样通过友元函数的访问属性,即可统计出3家银行中的总存款数。
*/
#include <iostream>
using namespace std;
class CBank
{
private:
float balance;
public:
CBank(float balance = 0)
{
this->balance = balance;
}
friend class user;
};
class BBank
{
private:
float balance;
public:
BBank(float balance = 0)
{
this->balance = balance;
}
friend class user;
};
class GBank
{
private:
float balance;
public:
GBank(float balance = 0)
{
this->balance = balance;
}
friend class user;
};
class user
{
private:
CBank C;
BBank B;
GBank G;
public:
user(CBank c,BBank b,GBank g)
{
C = c;
B = b;
G = g;
}
void total()
{
cout<<C.balance + B.balance + G.balance<<endl;
}
};
int main()
{
CBank c(100.1);
BBank b(100.2);
GBank g(100.3);
user u(c,b,g);
u.total();
}
一个类是另一个类的友元类,则这个类的所有成员函数都是另一个类的友元函数~
参考:
/*
设计一个程序,其中有3个类,即CBank,BBank和GBank,分别为中国银行类,工商银行类和农业银行类。
每个类都包含一个私有数据balance,用于存放储户在该行的存款数,另有一个友元函数total用于计算储户在这3家银行中的总存款数。
解析:
CBank,BBank和GBank3个类中均包含私有数据balance,以及其输入输出的相关函数。由于需要从外部对3个类的私有数据balance进行访问,
因此需要设计一个友元函数total(),这样通过友元函数的访问属性,即可统计出3家银行中的总存款数。
*/
#include <iostream>
using namespace std;
class CBank
{
private:
float balance;
public:
CBank(float balance = 0)
{
this->balance = balance;
}
friend class user;
};
class BBank
{
private:
float balance;
public:
BBank(float balance = 0)
{
this->balance = balance;
}
friend class user;
};
class GBank
{
private:
float balance;
public:
GBank(float balance = 0)
{
this->balance = balance;
}
friend class user;
};
class user
{
private:
CBank C;
BBank B;
GBank G;
public:
user(CBank c,BBank b,GBank g)
{
C = c;
B = b;
G = g;
}
void total()
{
cout<<C.balance + B.balance + G.balance<<endl;
}
};
int main()
{
CBank c(100.1);
BBank b(100.2);
GBank g(100.3);
user u(c,b,g);
u.total();
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询