问题及代码:
/*
*Copyright (c)2014,烟台大学计算机与控制工程学院
*All rights reserved.
*文件名称:test.cpp
*作者:陈文青
*完成日期:2015年3月18日
*版 本 号:v1.0
*
*问题描述:编写一个Book类,包含name(书名)、writer(著者)、public_name(出版社)、price(价格)、
number(数量)、NO(书号)等数据成员。定义成员函数setBook,用来为书籍的数据成员赋值,定义成员函数
borrow和restore,分别办理借出和还回(借、还书时,暂时只完成数量的增1减1,这里的书仍是一种书的概念,
随着课程进展,我们继续做真正的图书管理系统,每本书都能追踪到是谁何时借了,何时还了)业务,定义成员
函数print用于输出—有关书的信息,定义set_NO与get_NO来实现修改类对象的书号与获得类对象的书号。自己写
main函数,用来测试你编写的类。
*程序输入:
*程序输出:
*/
#include <iostream>
#include <string>
using namespace std;
class Book
{
string name;
string writer;
string public_name;
double price;
int number;
int NO;
public:
void setBook(string na,string wr,string pu, double pr,int nu,int no );
void set_NO(int n);
int get_NO( );
void borrow( );
void restore( );
void print( );
};
//为书籍的数据成员赋值
void Book::setBook(string na,string wr,string pu, double pr,int nu,int no )
{
name=na;
writer=wr;
public_name=pu;
price=pr;
number=nu;
NO=no;
}
//为书籍修改书号
void Book::set_NO(int n)
{
NO=n;
}
//查询书籍的书号
int Book::get_NO( )
{
return NO;
}
//借书
void Book::borrow( )
{
number--;
}
//还书
void Book::restore( )
{
number++;
}
//查询书籍信息
void Book::print( )
{
cout<<"name: "<<name<<endl;
cout<<"writer: "<<writer<<endl;
cout<<"public name: "<<public_name<<endl;
cout<<"price: "<<price<<endl;
cout<<"number: "<<number<<endl;
cout<<"NO: "<<NO<<endl;
cout<<endl;
}
int main()
{
Book a;
a.setBook("小王子", "安东尼","儿童文学",40,5,1234);
a.print();
a.borrow();
a.print();
a.restore();
a.print();
a.set_NO(4321);
a.print();
cout<<"new book NO: " <<a.get_NO()<<endl;
return 0;
}
运行结果:
知识点总结:
初步熟悉面对对象的程序设计