面向對象--作業二
阿新 • • 發佈:2018-05-06
獲得 構造 AI 心算 bubuko 其他 uninstall http 實現
C實現電梯調度流程
C++對象實現類圖
對比分析
C
C中主要是使用多個函數對變量進行數據處理的各項操作。
每個函數可能復雜度較高,一個函數進行多種運算後可得到相近於最終結果的數據。
各個函數組成一個核心算法,除算法外無其他有型結構。
數據流動比較隨意,只有相對的流動方向,沒有相對嚴謹的隸屬結構層次。
C++
C++主要是一個模擬事物的思想,在程序內部將電梯的主要特點捆綁構造為類。
在類中,數據流動方向固定,私有性數據不能隨意被篡改,具有高隱蔽性。
類可以附帶成員函數,來分擔實現一些小功能,因此核心算法可以變得更簡化。
在main函數中可通過調用電梯類公用方法獲得各種參數,以更便利地運算數據。
數據命名規範,隸屬層次分明,面對大數據時用起來更不容易出錯。
比較簡單的電梯類
#include<queue> class Elevator { private: int CurrentTime; //當前時間 int CurrentFloor; //當前樓層 queue<int> Destination; //目標隊列 int CurrentDirection; //當前方向,<0下,>0上 public: Elevator(); //構造 ~Elevator(); //析構 int GetCurrentFloor(); //當前樓層 void SetNextDestination(int); //接受下一層指令 } Elevator::~Elevator() { cout<<"Elevator has been uninstalled!"<<endl; } Elevator::int GetCurrentFloor() { return CurrentFloor; } Elevator::void SetNextDestination(int Next) { Destination.push(Next); CurrentDirection=Next-CurrentFloor; }
面向對象--作業二