C++面向对象类与对象实验报告图书管理系统.doc
《C++面向对象类与对象实验报告图书管理系统.doc》由会员分享,可在线阅读,更多相关《C++面向对象类与对象实验报告图书管理系统.doc(4页珍藏版)》请在冰豆网上搜索。
![C++面向对象类与对象实验报告图书管理系统.doc](https://file1.bdocx.com/fileroot1/2022-10/19/ad5a89eb-477b-4770-a1db-bbab6858e83c/ad5a89eb-477b-4770-a1db-bbab6858e83c1.gif)
青岛理工大学
课程实验报告
课程名称
C++面向对象程序设计
班级
实验日期
姓名
学号
实验成绩
实验名称
实验二类与对象
实
验
目
的
及
要
求
1.理解并掌握类的定义,实例化的方法。
2.了解类的构造函数和析构函数。
3.学习类成员访问控制的运用。
4.了解类的常数据成员和常成员函数。
5.了解类的静态数据成员和静态成员函数。
6.理解有元函数和有元类;掌握有元函数的使用。
实验环境
WindowXp,VisualC++6.0
实
验
内
容
定义一个Book类,在该类定义中包括:
(1)数据成员:
bookname(书名)、price(价格)和number(数量)。
(2)成员函数:
display()显示图书的情况;borrow()将存书数量减1,并显示当前存书数量;restored()将存书数量加1,并显示当前存书数量。
(3)在main函数中,要求建立某一种图书对象,并对该图书进行简单的显示、借阅和归还管理。
算
法
描
述
及
实
验
步
骤
类名
成员名
Book
数据成员:
bookname
price
number
voidset()
函数成员:
borrow()
retore()
display()
调
试
过
程
及
实
验
结
果
总
结
1.对于类的访问属性,函数成员如果主要在类外使用及设为public,如果只为类中的其他函数成员服务,则一般设为private。
2.一个新的自定义类型用class关键字实现的,其默认值为private。
在编程中可以利用缺省构造函数,使程序更
加简便。
3.对于析构函数和构造函数,它们的调用不同,构造函数是先声明先调用,析构函数是后声明先调用。
对于使用域限定符“:
:
”,它是用与类名一起使用的,用于识别类的成员,而成员函数访问符“.”和类的对象一起使用,用来访问类的成员。
附
录
#include
usingnamespacestd;
classBook//定义基类
{
charbookname[5];
intprice,number,sum;
public:
voidset();
intborrow(Book);
intretore(Book);
voiddisplay();
};
inti;
voidBook:
:
set()//定义成员函数
{
cin>>i;
Book:
:
price=10;
Book:
:
number=100;
Book:
:
sum=1000;
}
intBook:
:
borrow(Bookc)
{
c.number=c.number-1;c.sum=c.sum-1;
c.display();
returnc.number;
}
intBook:
:
retore(Bookc)
{
c.number=c.number+1;c.sum=c.sum+1;
c.display();
returnc.number;
}
voidBook:
:
display()
{
cout<<"书的名字是:
";
switch(i)
{
case1:
cout<<"数学"< case2:
cout<<"语文"< case3:
cout<<"生物"< case4:
cout<<"化学"< }
cout<<"该书的价格是:
"<:
price<cout<<"该书的存书数量是:
"<:
number<cout<<"书的总库存是:
"<:
sum<}
voidmain()
{
Bookc;//定义类
cout<<"书的名字:
"<<""<<"输的号码:
"< cout<<"数学"<<""<<"1"< cout<<"语文"<<""<<"2"< cout<<"生物"<<""<<"3"< cout<<"化学"<<""<<"4"< cout<<"请输入要借阅书的号码:
";
c.set();//调用基类函数
c.display();
intb;
cout<<"归还的代号:
"<<"0"<<"借阅的代号:
"<<"1"< cout<<"请输入借阅或归还的代号:
"< cin>>b;
if(b)
{c.borrow(c);}
else
{ c.retore(c);}
}
4