• 2017级面向对象程序设计寒假作业3


    心得:

    • 寒假在学习尝试用面向对象编程,感觉OOP特别适合这种要求迭代更新的工程。
      之前的代码是乱成一团,这次尝试用对象写。passenger类和elevator类写在elevator.h头文件中
      • 把乘客抽象成passenger类,有time(时间点)、from(来源)、to(目的楼层)、OE(IsOnElevator 是否在电梯上)、OW(IsOnWaiting 是否在等待)、ARR(IsArrived 是否到达)6个成员属性和重载函数
      • 把电梯抽象成elevator类
        • 有on_num(电梯上乘客数量)、wait_num(等待的乘客数量)、arrive_num(送达乘客数量)、floor(电梯当前所在楼层)、time(当前时间点)、tottime(所有乘客等待用时)6个成员属性
        • elevator类中有passenger类的onelevator类数组,表示在电梯上的成员
        • 有liftup(接上乘客)、liftoff(卸下乘客)、up(电梯上行)、down(电梯下行)、tofloor(行至目标楼层 )、status(输出当前电梯状态 调试用函数)6个成员函数和重载函数。模拟电梯可以进行的各种操作,方便以后根据需求迭代
      • 主函数中
        • 独立写了个输入函数,可以修改bool常量fromfile控制是从文件读入还是从文本读入,输出输出用freopen函数,输入输出文件名用define定义方便修改。
        • 用define定义了LINE,表示乘客数量,方便后面迭代根据需求修改

    目前情况:未完成。bug出在elevator类的接客下客成员函数,还有除第一次生成载客顺序可以正常运行,第二次之后电梯无法模拟运行。ddl快到了来不及修复。
    git地址
    git日志截图:

    git提交记录:

    21:47更新:电脑没电了 溜了溜了

  • 相关阅读:
    计算时代之大数据-分类阅读时代
    从语言到库到框架,再到API,再到标记最后到DSL语言
    Angular指令1
    宇宙量子计算理论
    Angular实现瀑布流的库angular-deckgrid
    Markdown会干掉Html吗?
    基于Html5缓存的页面P2P技术可行性探讨
    一个艰难的决定
    CentOS7 安装 MariaDB-10.4.7
    MongoDB-4 GridFS 文件存储
  • 原文地址:https://www.cnblogs.com/fzu-031702148/p/8460111.html
Copyright © 2020-2023  润新知