zoukankan      html  css  js  c++  java
  • 面向对象程序设计作业(3)

    第三次作业

    GitHub:pullself


    类图


    基本信息

    主要是在上一个电梯的基础上修改的。由于本周忙于复习,调度方式较为简陋。

    代码行数 调试bug 编码时间
    832行 3个 2h

    程序总共由5个文件组成:

    • main.cpp:主函数,程序的入口。
    • elevator.h:定义了电梯类,包含两个电梯成员的封闭类以及两个派生类。
    • elevator.cpp:电梯类方法的实现。
    • ask.h:定义了请求类。
    • ask.cpp:请求类方法的实现。

    编码过程

    简介

    1. 奇数电梯以及偶数电梯都是由基础电梯类继承而来的。
    2. 调度采用了比较简单的分配方式。
    3. 准备后续改造将请求的分配单独成一个调度类来处理。
    4. 这次以学习的目的,特地尝试了继承以及多态。

    问题

    1.这次主要的问题来自于文件输入输出的处理,由于这次是采用一步一步输出的方式所以注意到了文件输出需要不覆盖之前的问题。

    bug修复

    1. 修复了上一个版本电梯构造队列的严重逻辑错误。
    2. 修复了在同一运行时刻将同一请求多次加入队列的问题。
    3. 修复了0时无请求时,跳过第一个请求的问题。
    4. 修复了请求队头的判定条件错误。
    5. 修复了电梯运行时间不同步的问题。

    c语言实现

    如果采用c语言,无非就是全局定义三组变量来描述三部电梯,然后利用调度函数,队列构造函数以及运行函数,模拟运行。

  • 相关阅读:
    Java 中的数组操作
    WinForm 无边框窗体、后台创建控件、timer控件
    WinForm 进程与线程
    WinForm messageboxbuttons 和 三级联动
    WinForm ListView控件属性及用法
    WinForm 多窗体、菜单和工具栏控件
    WinForm 小练习订餐界面
    WinForm 公共控件及其常用属性
    WinForm 常用属性及控件
    ADO.NET 数据访问类查询、属性扩展
  • 原文地址:https://www.cnblogs.com/pullself/p/9026502.html
Copyright © 2011-2022 走看看