Giter Site home page Giter Site logo

booksmanagesystem's Introduction

图书管理系统

基于C++实现简易图书管理系统

该项目是在学习完C++语言后,独立完成设计开发的简易图书管理系统

设计的基本要求

  • 基本完成对图书系统的设计,包含基本的功能,无界面设计。

  • 要有明显的分类,对不同的进入者有不同的功能,功能要齐全。

  • 要有基本维护功能,能完成对书籍,登陆者的基本功能需求。

设计思路

  • 1.对基本类的书写,共有三个类,book类,manage类,reader类,完成对类的定义实现,实现相应的功能。

  • 2.根据图书系统的功能需求,实现类之间的调用和功能的实现,对类的结构进行更规范的修改,来完成图书功能。

  • 3.书写主函数,调用类的相应函数,对各功能进行关联,完成对菜单函数的书写,能够实现界面的跳转,进行相应功能的测试。

  • 4.调试各功能函数,查找错误点,进行修改。

基本功能

  • 管理员(未登录)

    • 登录
    • 修改个人信息
  • 管理员(登录后)

    • 增加读者
    • 删除读者
    • 增加书籍信息
    • 修改书籍信息
    • 删除书籍信息
  • 读者(未登录)

    • 登录
    • 修改个人信息
  • 读者(登录后)

    • 查询书籍
    • 借阅书籍
    • 返还书籍

程序中遇到的问题及解决方法

1.文件的读入读出

  • 采用文本方法写入文件,使用文件流fstream,当多次写入时,使用追加方式写入,实现文件的保存。

2.文件中实现修改和删除

  • 通过创建文件副本,把修改后的内容写到副本文件中去,再将副本中的内容写到原文件中去,最后删除副本文件。修改书籍增加标签变量,判断是否找到书籍,找到后将变量值加1,来实现标记。在删除时先查找,和修改一样,再写入到副本文件中时,将删除的内容不写入,实现删除。

3.窗口间的跳转

  • 一个主窗口,还有两个分别属于读者和管理员的窗口,各对应相应的功能,采用switch语句嵌套的方法,实现窗口的逐层进入。

4.采用函数封装的方法

  • 程序中主函数代码很少,看起来很简单,功能函数都封装好,菜单函数也封装起来,直接进行函数调用,看起来结构清晰。

总结

  • 图书管理系统中上有些功能未完善(例如:查找只能根据书名查找),尚待改进。
  • 系统中用到很多for循环语句,代码有些冗杂。
  • 代码的优化做得不够,很多代码很复杂,要进一步简化。
  • 基本功能满足,可以继续增加改进。
  • 基本了解了C++的编程**

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.