C++创建一个名为Invoice的类

习题3.13

具体要求如下:

      1)(Invoice类)创建一个名为Invoice(发票)的类,商店可以使用它表示店中售出一款商品的一张发票。

      2)一个Invoice对象应当包括作为数据成员的4部分的信息:零件号(类型: string)、零件描述(类型:string)、售出量(类型:int)和单价(类型:int)。

      3)这个类必须具有一个初始化前述的4个数据成员的构造函数,对每个数据成员都提供一个设置函数和一个获取函数。

      4)还要提供一个名为getInvoiceAmount的成员函数,计算发票额(即售出量与单价的乘积),并以int类型返回该值。如果售出量是负数,那么应该设置为0;如果单价是负数,那么应该设置为0。

      5)编写一个测试程序,演示Invoice类的性能。

具体代码实现如下:

1)(Invoice类)创建一个名为Invoice(发票)的类,商店可以使用它表示店中售出一款商品的一张发票。

class Invoice
{

};

2)一个Invoice对象应当包括作为数据成员的4部分的信息:零件号(类型: string)、零件描述(类型:string)、售出量(类型:int)和单价(类型:int)。

private:
	string num;//零件号
	string des;//零件描述
	int sales;//售出量
	int price;//单价
	int sum;//用来放总数

3)这个类必须具有一个初始化前述的4个数据成员的构造函数,对每个数据成员都提供一个设置函数和一个获取函数。

public:
		void setNum( string number )
		{
			num = number;
		}
		string getNum()
		{
			return num;
		}
		
		void setDes( string describe )
		{
			des = describe;
		}
		string getDes()
		{
			return des;
		}
		
		void setSales( int sales1)
		{
			sales = sales1;
		}
		int getSales()
		{
			return sales;
		}
		
		void setPrice( int price1 )
		{
			price=price1;
		}
		int getPrice()
		{
			return price;
		}
		

4)还要提供一个名为getInvoiceAmount的成员函数,计算发票额(即售出量与单价的乘积),并以int类型返回该值。如果售出量是负数,那么应该设置为0;如果单价是负数,那么应该设置为0。

int getInvoiceAmount()
		{
			if(sales < 0)
			{
				sales=0;
				sum=0;
			}
			else
			{
				return sum=price*sales;
			}
		}

 5)编写一个测试程序,演示Invoice类的性能。

int main()
{
	Invoice a;
	a.setNum("001");
	cout << a.getNum() << endl;
	
	a.setDes("sss");
	cout << a.getDes() << endl;
	
	a.setSales(66);
	cout << a.getSales() << endl;
	
	a.setPrice(500);
	cout << a.getPrice() << endl;
	
	cout << a.getInvoiceAmount() << endl;
	
	return 0;
}

全部的运行代码如下:

#include<iostream>
#include<string>

using namespace std;

class Invoice
{
	public:
		void setNum( string number )
		{
			num = number;
		}
		string getNum()
		{
			return num;
		}
		
		void setDes( string describe )
		{
			des = describe;
		}
		string getDes()
		{
			return des;
		}
		
		void setSales( int sales1)
		{
			sales = sales1;
		}
		int getSales()
		{
			return sales;
		}
		
		void setPrice( int price1 )
		{
			price=price1;
		}
		int getPrice()
		{
			return price;
		}
		
		int getInvoiceAmount()
		{
			if(sales < 0)
			{
				sales=0;
				sum=0;
			}
			else
			{
				return sum=price*sales;
			}
		}
		
	private:
	string num;//零件号
	string des;//零件描述
	int sales;//售出量
	int price;//单价
	int sum;//用来放总数

};

int main()
{
	Invoice a;
	a.setNum("001");
	cout << a.getNum() << endl;
	
	a.setDes("sss");
	cout << a.getDes() << endl;
	
	a.setSales(66);
	cout << a.getSales() << endl;
	
	a.setPrice(500);
	cout << a.getPrice() << endl;
	
	cout << a.getInvoiceAmount() << endl;
	
	return 0;
}

猜你喜欢

转载自blog.csdn.net/weixin_74287172/article/details/130351166