版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、設(shè)計(jì)書(shū)明書(shū)一、問(wèn)題描述用面向?qū)ο蠓椒ê兔嫦驅(qū)ο蟪绦蛟O(shè)計(jì)語(yǔ)言,實(shí)現(xiàn)滿(mǎn)足下述要求的一個(gè)高層建筑電梯活動(dòng)仿真程序。1. 問(wèn)題題域概述述某國(guó)際展覽覽中心共共 400 層,設(shè)設(shè)有載客客電梯110 部部(用EE0EE9 標(biāo)標(biāo)識(shí))。2. 限定定條件(1) 電電梯的運(yùn)運(yùn)行規(guī)則則是:E0、EE1:可可到達(dá)每每層。E2、EE3:可可到達(dá)11、255400 層。E4、EE5:可可到達(dá)11255 層。E6、EE7:可可到達(dá)11、240 層中的的偶數(shù)層層。E8、EE9:可可到達(dá)11399 層中中的奇數(shù)數(shù)層。(2) 每每部電梯梯的最大大乘員量量均為KK 人(KK 值可可以根據(jù)據(jù)仿真情情況在110118 人人之間確確定)。
2、(3) 仿仿真開(kāi)始始時(shí),各各電梯隨隨機(jī)地處處于其符符合運(yùn)行行規(guī)則的的任意一一層,為為空梯。(4) 仿仿真開(kāi)始始后,有有N 人人(0N110000)在MM 分鐘鐘(0M110)內(nèi)內(nèi)隨機(jī)地地到達(dá)該該國(guó)際展展覽中心心的1 層,開(kāi)開(kāi)始乘梯梯活動(dòng)。(5) 每每位乘客客初次所所要到達(dá)達(dá)的樓層層是隨機(jī)機(jī)的,令令其在合合適的電電梯處等等待電梯梯到來(lái)。(6) 每每位乘客客乘坐合合適的電電梯到達(dá)達(dá)指定樓樓層后,隨隨機(jī)地停停留1001220 秒秒后,再再隨機(jī)地地去往另另一樓層層,依此此類(lèi)推,當(dāng)當(dāng)每人乘乘坐過(guò)LL 次(每每人的LL 值不不同,在在產(chǎn)生乘乘客時(shí)隨隨機(jī)地在在1110 次次之間確確定)電電梯后,第第L+11
3、 次為為下至底底層并結(jié)結(jié)束乘梯梯行為。到到所有乘乘客結(jié)束束乘梯行行為時(shí),本本次仿真真結(jié)束。(7) 電電梯運(yùn)行行速度為為S 秒秒/層(SS 值可可以根據(jù)據(jù)仿真情情況在115 之間確確定),每每人上下下時(shí)間為為T(mén) 秒秒(T 值可以以根據(jù)仿仿真情況況在210 之間確確定)。(8) 電電梯運(yùn)行行的方向向由先發(fā)發(fā)出請(qǐng)求求者決定定,不允允許后發(fā)發(fā)出請(qǐng)求求者改變變電梯的的當(dāng)前運(yùn)運(yùn)行方向向,除非非是未被被請(qǐng)求的的空梯。(9) 當(dāng)當(dāng)某層有有乘客按按下乘梯梯電鈕時(shí)時(shí),優(yōu)先先考慮離離該層最最近的、滿(mǎn)滿(mǎn)足條件件(8)、能能夠最快快到達(dá)目目標(biāo)層的的電梯。(10) 不允許許電梯超超員。3. 開(kāi)發(fā)發(fā)結(jié)果的的行為特特征(1)
4、 產(chǎn)產(chǎn)生事件件的周期期為1 秒,每每次可產(chǎn)產(chǎn)生0 個(gè)或多多個(gè)事件件。(2) 各各隨機(jī)事事件由互互不相關(guān)關(guān)的偽隨隨機(jī)數(shù)發(fā)發(fā)生器決決定。(3) 設(shè)設(shè)計(jì)一個(gè)個(gè)易于理理解的界界面,動(dòng)動(dòng)態(tài)顯示示各梯的的載客與與運(yùn)行情情況,動(dòng)動(dòng)態(tài)顯示示各樓層層的人員員停留情情況與要要求乘梯梯情況;動(dòng)態(tài)顯顯示從仿仿真開(kāi)始始到目前前的時(shí)間間。(4) 顯顯示時(shí)用用應(yīng)表示示出不同同的乘客客及其當(dāng)當(dāng)前所要要求去往往的樓層層。例如如,122-322 表示示標(biāo)識(shí)為為12 的乘客客要求去去往322 層。(5) 統(tǒng)統(tǒng)計(jì)各梯梯的運(yùn)行行與空閑閑時(shí)間;統(tǒng)計(jì)各各人發(fā)出出乘梯要要求后的的等待時(shí)時(shí)間;仿仿真結(jié)束束后顯示示這些時(shí)時(shí)間。(6) 參參數(shù)K、
5、NN、M、SS、T 應(yīng)從命命令行輸輸入。(7) (選選做)考考慮有些些乘客(隨隨機(jī)決定定)攜帶帶的物品品體積較較大,需需占用112 人的電電梯空間間(隨機(jī)機(jī)決定),且且上下梯梯的時(shí)間間比其他他乘客長(zhǎng)長(zhǎng)一倍的的情況,再再進(jìn)行相相應(yīng)的仿仿真(注注意,不不是所有有的乘客客都攜帶帶較大體體積的物物品)。這這時(shí),顯顯示乘客客及所去去往的樓樓層時(shí)要要能夠識(shí)識(shí)別出是是否攜帶帶了較大大體積的的物品。二、分析與與設(shè)計(jì)模模型1. 分析析過(guò)程(1) 根根據(jù)問(wèn)題題域中所所描述的的內(nèi)容,可可以生成成一張“電梯樓樓層可達(dá)達(dá)表”,其中“1”表示它它所在列列所對(duì)應(yīng)應(yīng)的電梯梯可到達(dá)達(dá)它所在在行對(duì)應(yīng)應(yīng)的樓層層,如下下所示:E0E
6、1E2E3E4E5E6E7E8E9F11111111111F2111111F3111111F4111111F5111111F6111111F7111111F8111111F9111111F10111111F11111111F12111111F13111111F14111111F15111111F16111111F17111111F18111111F19111111F20111111F21111111F22111111F23111111F24111111F2511111111F26111111F27111111F28111111F29111111F30111111F31111111F321111
7、11F33111111F34111111F35111111F36111111F37111111F38111111F39111111F40111111(2) 根根據(jù)問(wèn)題題域中所所描述的的內(nèi)容,在系統(tǒng)中識(shí)別出了三種不同的事物,分別是乘客,電梯和樓層。開(kāi)始仿真后,對(duì)于某一個(gè)乘客,如果他不在樓層中,那么就一定在電梯中。這樣就可以將樓層和電梯都看作是包含容器和其他數(shù)據(jù)和標(biāo)志的對(duì)象,在這些對(duì)象的容器中存放的就是乘客。(3) 將將樓層看看作是容容器時(shí),發(fā)發(fā)現(xiàn)樓層層對(duì)象內(nèi)內(nèi)部的容容器可以以按作用用分為兩兩大類(lèi),一一類(lèi)是存存放在該該層隨機(jī)機(jī)停留的的乘客的的容器,另另一類(lèi)是是存放在在該層等等待電梯梯的乘客客的容器
8、器。其中中,第二二類(lèi)容器器又可以以按照乘乘客是向向上還是是向下分分為兩類(lèi)類(lèi),一類(lèi)類(lèi)是存放放等待向向上乘客客的容器器,另一一類(lèi)是存存放等待待向下乘乘客的容容器??偨Y(jié)起來(lái),樓樓層內(nèi)部部的容器器共可以以分為三三類(lèi):隨隨機(jī)停留留容器、等等待向上上容器和和等待向向下容器器。根據(jù)樓層包包含這三三種容器器中的哪哪幾種的的不同,可可以將樓樓層分為為三類(lèi):底層樓層。乘客在底層層樓層中中只能夠夠隨機(jī)停停留或者者乘梯向向上運(yùn)動(dòng)動(dòng),所以以底層樓樓層只包包含兩種種容器:隨機(jī)停停留容器器和等待待向上容容器。中間樓層乘客在中間間樓層可可以隨機(jī)機(jī)停留,并并且乘客客既可以以乘梯向向上運(yùn)動(dòng)動(dòng),又可可以乘梯梯向下運(yùn)運(yùn)動(dòng),所所以中間
9、間樓層中中包含三三種容器器:隨機(jī)機(jī)停留容容器、等等待向上上容器和和等待向向下容器器。頂層樓層乘客在頂層層樓層中中只能夠夠隨機(jī)停停留或者者乘梯向向下運(yùn)動(dòng)動(dòng),所以以頂層樓樓層只包包含兩種種容器:隨機(jī)停停留容器器和等待待向下容容器。又因?yàn)槊總€(gè)個(gè)樓層的的可到達(dá)達(dá)電梯是是不同的的,所以以在樓層層類(lèi)型的的內(nèi)部定定義一個(gè)個(gè)vecctorr,初始始化的時(shí)時(shí)候該vvecttor為為空,然然后通過(guò)過(guò)查看樓樓層電梯梯可達(dá)表表再填充充該veectoor的內(nèi)內(nèi)容,里里面存儲(chǔ)儲(chǔ)了所有有可到達(dá)達(dá)該樓層層的電梯梯的信息息。(4) 將將電梯看看作是容容器時(shí),所有電梯都可以使用一個(gè)類(lèi)型來(lái)表示了。在電梯類(lèi)型中,定義一個(gè)vector
10、,初始化的時(shí)候該vector為空,然后通過(guò)查看樓層電梯可達(dá)表再填充該vector的內(nèi)容,里面存儲(chǔ)了該電梯可到達(dá)的所有樓層的信息。(5) 對(duì)對(duì)于乘客客來(lái)說(shuō),乘乘客當(dāng)前前在某一一樓層,打打算去另另一樓層層。乘客客知道當(dāng)當(dāng)前所在在樓層的的所有電電梯中有有哪些可可以到達(dá)達(dá)自己想想要去的的樓層,并并且會(huì)對(duì)對(duì)這些所所有可以以可到達(dá)達(dá)的電梯梯都發(fā)出出與自己己目標(biāo)方方向相同同的乘梯梯請(qǐng)求。當(dāng)當(dāng)某一電電梯到達(dá)達(dá)乘客所所在樓層層時(shí),若若該電梯梯可到達(dá)達(dá)乘客要要去的樓樓層,并并且現(xiàn)在在的運(yùn)動(dòng)動(dòng)方向與與乘客的的目標(biāo)方方向相同同,并且且現(xiàn)在排排在該乘乘客前方方的乘客客沒(méi)有上上該電梯梯,并且且該電梯梯不滿(mǎn)時(shí)時(shí),乘客客才會(huì)
11、上上該電梯梯。如果果乘客正正在等待待上電梯梯,而同同時(shí)又有有另一部部滿(mǎn)足條條件的電電梯到達(dá)達(dá),并且且現(xiàn)在沒(méi)沒(méi)有人上上下,那那么乘客客就直接接上另一一部電梯梯,而不不是等待待原來(lái)那那部電梯梯。這樣樣就可以以保證乘乘客總是是可以乘乘坐最早早到達(dá)該該層的的的電梯,而而不是死死等某一一固定電電梯到達(dá)達(dá)。2. 系統(tǒng)統(tǒng)中重要要類(lèi)的識(shí)識(shí)別根據(jù)上述分分析,在在系統(tǒng)中中識(shí)別出出來(lái)的主主要有三三個(gè)類(lèi):電梯類(lèi)類(lèi)Eleevattor,樓樓層類(lèi)FFlooor和乘乘客類(lèi)PPasssengger。其中Elevator類(lèi)是對(duì)各類(lèi)電梯的抽象,它封裝了各類(lèi)電梯的數(shù)據(jù)結(jié)構(gòu)和方法。Floor類(lèi)是一個(gè)虛基類(lèi),在該類(lèi)中定義了各類(lèi)操作的公
12、共接口;由Floor類(lèi)派生出三個(gè)子類(lèi),分別為BottomFloor類(lèi),MiddleFloor類(lèi)和TopFloor類(lèi),分別為對(duì)底層樓層、中間樓層和頂層樓層的抽象,分別封裝了底層樓層、中間樓層和頂層樓層的數(shù)據(jù)機(jī)構(gòu)和方法。Passenger類(lèi)是對(duì)不同乘客的抽象,它封裝了乘客的數(shù)據(jù)結(jié)構(gòu)和方法。3. 系統(tǒng)統(tǒng)中的類(lèi)類(lèi)圖4. 類(lèi)間間交互過(guò)過(guò)程在系統(tǒng)中定定義乘客客、樓層層和電梯梯三種對(duì)對(duì)象。乘乘客按下下該樓層層乘梯按按鈕發(fā)出出乘梯請(qǐng)請(qǐng)求,樓樓層將該該乘梯請(qǐng)請(qǐng)求通知知相應(yīng)電梯梯,電梯梯響應(yīng)請(qǐng)求求,到達(dá)達(dá)該樓層層時(shí)通知知該樓層層電梯到到達(dá),該該樓層通通知等待待的乘客客電梯到到達(dá)。乘乘客上電電梯后電電梯離開(kāi)開(kāi),通知
13、知樓層電電梯離開(kāi)開(kāi),樓層層通知所所有在該該層等待待的乘客客電梯離離開(kāi)。乘乘客在電電梯內(nèi)設(shè)設(shè)置目標(biāo)標(biāo)樓層號(hào)號(hào),電梯梯載乘客客到達(dá)目目標(biāo)樓層層后通知知乘客電電梯到達(dá)達(dá),乘客客下電梯梯。5. 乘客客及電梯梯的狀態(tài)態(tài)遷移圖圖(1) 乘乘客的狀狀態(tài)遷移圖圖乘客有111種不同同的狀態(tài)態(tài),分別別是“仿真開(kāi)開(kāi)始前”,“隨機(jī)停停留”,“等待電電梯到達(dá)達(dá)”,“等待上上電梯”,“正在上上電梯”,“等待電電梯運(yùn)行行”,“隨電梯梯向目標(biāo)標(biāo)層運(yùn)動(dòng)動(dòng)”,“隨電梯梯在非目目標(biāo)層停停止”,“等待下下電梯”,“正在下下電梯”和“仿真結(jié)結(jié)束”。這些狀狀態(tài)只有有在時(shí)鐘鐘每秒觸觸發(fā)的時(shí)時(shí)候才會(huì)會(huì)發(fā)生相相應(yīng)轉(zhuǎn)換換,如果果乘客的的當(dāng)前狀狀
14、態(tài)沒(méi)有有轉(zhuǎn)為另另一個(gè)狀狀態(tài),則則表示乘乘客維持持當(dāng)前狀狀態(tài)不變變。對(duì)某一個(gè)乘乘客仿真真開(kāi)始前前,乘客客的狀態(tài)態(tài)是“仿真開(kāi)開(kāi)始前”。當(dāng)乘乘客進(jìn)入入大樓,對(duì)對(duì)乘客的的仿真開(kāi)開(kāi)始,乘乘客的狀狀態(tài)置為為“隨機(jī)停停留”。當(dāng)乘客客的當(dāng)前前狀態(tài)為為“隨機(jī)停停留”,并且且乘客的的仿真次次數(shù)還沒(méi)沒(méi)有到達(dá)達(dá)設(shè)定的的最大值值,那么么當(dāng)乘客客的停留留時(shí)間到到,如果果此時(shí)沒(méi)沒(méi)有符合合乘客乘乘梯要求求的電梯梯到達(dá),乘乘客的狀狀態(tài)轉(zhuǎn)為為“等待電電梯到達(dá)達(dá)”;如果此此時(shí)有符符合乘客客乘梯要要求的電電梯到達(dá)達(dá),并且且此時(shí)電電梯中沒(méi)沒(méi)有人上上下,那那么乘客客的狀態(tài)態(tài)改為“正在上上電梯”;如果果此時(shí)電電梯中有有人正在在下電梯梯或者
15、乘乘客前方方的人正正在上電電梯,那那么乘客客的狀態(tài)態(tài)改為“等待上上電梯”。當(dāng)乘乘客的當(dāng)當(dāng)前狀態(tài)態(tài)為“等待上上電梯”,而此此時(shí)已沒(méi)沒(méi)有人再再下電梯梯,并且且前面的的乘客也也都已經(jīng)經(jīng)上了電電梯,那那么乘客客的狀態(tài)態(tài)轉(zhuǎn)為“正在上上電梯”;而如如果乘客客的當(dāng)前前狀態(tài)為為“等待上上電梯”,而電電梯已滿(mǎn)滿(mǎn)并且離離開(kāi),那那么乘客客的狀態(tài)態(tài)轉(zhuǎn)為“等待電電梯到達(dá)達(dá)”。當(dāng)乘乘客的當(dāng)當(dāng)前狀態(tài)態(tài)為“正在上上電梯”,如果果已經(jīng)完完成上電電梯活動(dòng)動(dòng),并且且后面的的乘客不不再上電電梯,那那么乘客客的狀態(tài)態(tài)轉(zhuǎn)為“隨電梯梯向目標(biāo)標(biāo)層運(yùn)動(dòng)動(dòng)”;如果果后面的的乘客仍仍然在上上電梯,那那么乘客客的狀態(tài)態(tài)轉(zhuǎn)為“等待電電梯運(yùn)動(dòng)動(dòng)”。當(dāng)乘
16、乘客的當(dāng)當(dāng)前狀態(tài)態(tài)為“等待電電梯運(yùn)動(dòng)動(dòng)”,而所所有乘客客都已經(jīng)經(jīng)完成上上電梯活活動(dòng),電電梯開(kāi)始始運(yùn)動(dòng),乘乘客的狀狀態(tài)改為為“隨電梯梯向目標(biāo)標(biāo)層運(yùn)動(dòng)動(dòng)”。當(dāng)乘乘客的當(dāng)當(dāng)前狀態(tài)態(tài)為“隨電梯梯向目標(biāo)標(biāo)層運(yùn)動(dòng)動(dòng)”,電梯梯在某層層停下,如如果該層層不是乘乘客的目目標(biāo)層,那那么乘客客的狀態(tài)態(tài)轉(zhuǎn)為“隨電梯梯停留”;如果果該層是是乘客的的目標(biāo)層層,如果果前面有有人下電電梯,那那么乘客客的狀態(tài)態(tài)轉(zhuǎn)為“等待下下電梯”;如果果前面沒(méi)沒(méi)有人下下電梯,乘乘客的狀狀態(tài)轉(zhuǎn)為為“正在下下電梯”。如果乘乘客的當(dāng)當(dāng)前狀態(tài)態(tài)為“等待下下電梯”,前面面乘客已已經(jīng)下電電梯完畢畢,那么么乘客狀狀態(tài)轉(zhuǎn)為為“正在下下電梯”。如果果乘客的的當(dāng)
17、前狀狀態(tài)為“正在下下電梯”,并且且已經(jīng)下下電梯結(jié)結(jié)束,那那么乘客客的當(dāng)前前狀態(tài)轉(zhuǎn)轉(zhuǎn)為“隨機(jī)停停留”。如果乘乘客的當(dāng)當(dāng)前狀態(tài)態(tài)為“隨機(jī)停停留”,并且且乘客的的仿真次次數(shù)已經(jīng)經(jīng)到達(dá)了了設(shè)定的的最大值值,那么么乘客的的狀態(tài)轉(zhuǎn)轉(zhuǎn)為“結(jié)束仿仿真”。(2) 電電梯狀態(tài)態(tài)遷移圖圖仿真開(kāi)始前前,電梯梯的狀態(tài)態(tài)為“停止”。當(dāng)仿仿真開(kāi)始始后,電電梯的狀狀態(tài)為“停止”,如果電電梯按照照運(yùn)行規(guī)規(guī)則查找找到的目目標(biāo)樓層層是當(dāng)前前樓層上上方的樓樓層,那那么電梯梯的狀態(tài)態(tài)轉(zhuǎn)為“向上運(yùn)運(yùn)動(dòng)”;如果果目標(biāo)樓樓層是下下方的樓樓層,那那么電梯梯的當(dāng)前前狀態(tài)轉(zhuǎn)轉(zhuǎn)為“向下運(yùn)運(yùn)動(dòng)”;如果果目標(biāo)樓樓層就是是“當(dāng)前樓樓層”,那么么電梯的的狀
18、態(tài)轉(zhuǎn)轉(zhuǎn)為“在某層層停留”。如果果電梯的的當(dāng)前狀狀態(tài)為“向上運(yùn)運(yùn)動(dòng)”,電梯梯已經(jīng)到到達(dá)目標(biāo)標(biāo)層,那那么電梯梯的狀態(tài)態(tài)轉(zhuǎn)為“在某層層停留”。如果果電梯的的當(dāng)前狀狀態(tài)為“向下運(yùn)運(yùn)動(dòng)”,電梯梯已經(jīng)到到達(dá)目標(biāo)標(biāo)層,那那么電梯梯的狀態(tài)態(tài)轉(zhuǎn)為“在某層層停留”。如果果電梯的的當(dāng)前狀狀態(tài)為“在某層層停留”,上下下乘客結(jié)結(jié)束,電電梯查找找下一目目標(biāo)層,如如果下一一目標(biāo)層層為上方方樓層,那那么電梯梯的狀態(tài)態(tài)轉(zhuǎn)為“向上運(yùn)運(yùn)動(dòng)”;如果果下一目目標(biāo)層為為下方樓樓層,那那么電梯梯的狀態(tài)態(tài)轉(zhuǎn)為“向下運(yùn)運(yùn)動(dòng)”;如果果找不到到目標(biāo)樓樓層,那那么說(shuō)明明電梯現(xiàn)現(xiàn)在沒(méi)有有乘客使使用,電電梯的狀狀態(tài)轉(zhuǎn)為為“停止”。三、標(biāo)識(shí)符符命名規(guī)規(guī)則
19、1. 類(lèi)的的命名規(guī)規(guī)則類(lèi)的命名形形式為“類(lèi)名的的意義單單詞”,類(lèi)名中中單詞的的首字母母大寫(xiě)。例如:Eleevattor,F(xiàn)Flooor,PPasssengger。2. 成員員函數(shù)命命名規(guī)則則類(lèi)中成員函函數(shù)的命命名規(guī)則則為“x_代表表成員函函數(shù)的功功能的單單詞組合合”,其中中x為字字母e時(shí)時(shí),表示示為Ellevaatorr電梯類(lèi)類(lèi)的成員員函數(shù);x為字字母f時(shí)時(shí),表示示為Flloorr樓層類(lèi)類(lèi)的成員員函數(shù);x為字字母p時(shí)時(shí),表示示為Paasseengeer乘客客類(lèi)的成成員函數(shù)數(shù)。單詞詞組合中中每個(gè)單單詞首字字母大寫(xiě)寫(xiě)。比如如:e_FinndDeestiinattionnFlooor(),ff_No
20、oticceEllevaatorrLeaaveUUp(),p_GettInBBuilldinng()。3. 數(shù)據(jù)據(jù)成員命命名規(guī)則則類(lèi)中數(shù)據(jù)成成員的命命名規(guī)則則為“x_表示其其功能與與含義的的單詞組組合”,其中x為為字母ee時(shí),表表示為EElevvatoor電梯梯類(lèi)的數(shù)數(shù)據(jù)成員員;x為為字母ff時(shí),表表示為FFlooor樓層層類(lèi)的數(shù)數(shù)據(jù)成員員;x為為字母pp時(shí),表表示為PPasssengger乘乘客類(lèi)的的數(shù)據(jù)成成員。單詞組組合中每每個(gè)單詞詞首字母母大寫(xiě)。如如e_CCurrrenttPasssenngerrAmoountt,f_FFlooorNuumbeer,p_RaandoomSttayiing
21、TTimee。4. 局部部變量命命名規(guī)則則局部變量用用小寫(xiě)單單詞表示示,成員員函數(shù)參參數(shù)使用用“X_表示其其功能與與含義的的單詞組組合”,其中X為為字母EE時(shí),表表示為EElevvatoor電梯梯類(lèi)的成成員函數(shù)數(shù)的參數(shù)數(shù);X為為字母FF時(shí),表表示為FFlooor樓層層類(lèi)的成成員函數(shù)數(shù)的參數(shù)數(shù);X為為字母PP時(shí),表表示為PPasssengger乘乘客類(lèi)的的成員函函數(shù)的數(shù)數(shù)據(jù)成員員。單詞詞組合中中每個(gè)單單詞首字字母大寫(xiě)寫(xiě)。如EE_FlloorrNummberr,F(xiàn)_EElevvatoorNuumbeer,P_EElevvatoorNuumbeer??傊到y(tǒng)統(tǒng)中所有有標(biāo)識(shí)符符都做到到了見(jiàn)其其名能知
22、知其義。四、系統(tǒng)中中重要類(lèi)類(lèi)及方法法的說(shuō)明明1. Ellevaatorr類(lèi)的說(shuō)說(shuō)明它是系統(tǒng)中中各種電電梯的抽抽象。有有如下屬屬性和方方法:對(duì)該類(lèi)的說(shuō)說(shuō)明如下下:classs Ellevaatorrprivaate:stattic intt e_TimmeNeeedPPerFFlooor;/電電梯每上上或下一一層所需需要的時(shí)時(shí)間stattic intt e_MaxxPasssenngerrAmoountt;/電電梯的最最大容客客量int e_EElevvatoorNuumbeer;/電電梯編號(hào)號(hào)int e_CCurrrenttPasssenngerrAmoountt;/電電梯內(nèi)當(dāng)當(dāng)前乘客客數(shù)目E
23、levvatoorSttatee e_CurrrenntSttatee;/電電梯當(dāng)前前狀態(tài)Direectiion e_DDireectiion;/電電梯運(yùn)行行方向Direectiion e_AArriiveddDirrecttionn;/電電梯下一一步的運(yùn)運(yùn)行方向向int e_CCurrrenttFlooorNNumbber;/當(dāng)當(dāng)前樓層層編號(hào)int e_DDesttinaatioonFlloorrNummberr;/目目標(biāo)樓層層編號(hào)int e_NNexttFlooorNNumbber;/下下一樓層層編號(hào)int e_TTimeeNeeedTooNexxtFlloorr;/到到下一樓樓層所需需要
24、的時(shí)時(shí)間int e_TTimeeNeeedTooNexxtFlloorrSteepCoountter;/從從當(dāng)前樓樓層出發(fā)發(fā)向下一一樓層運(yùn)運(yùn)動(dòng)已經(jīng)經(jīng)經(jīng)過(guò)的的時(shí)間(計(jì)計(jì)數(shù)器)int e_SStayyFreeeTiimeCCounnterr;/電電梯在某某層停留留時(shí)沒(méi)有有人上下下的時(shí)間間計(jì)數(shù)器器booll e_bBuusy;/是是否有人人上下的的標(biāo)志booll e_bFuull;/電電梯是否否已滿(mǎn)的的標(biāo)志int e_TTotaalRuunTiime;/總總運(yùn)行時(shí)時(shí)間int e_TTotaalSttopTTimee;/總總停止時(shí)時(shí)間int e_NNearresttDesstinnateedFlloo
25、rrNummberr;/電電梯內(nèi)乘乘客所要要到達(dá)的的樓層中中最近的的樓層int e_NNearresttReqquessteddFlooorNNumbber;/查查找到的的最近的的發(fā)出乘乘梯請(qǐng)求求的樓層層int e_FFareestRRequuesttedFFlooorNuumbeer;/查查找到的的最遠(yuǎn)的的發(fā)出乘乘梯請(qǐng)求求的樓層層int e_EElevvatoorReelattedFFlooorSiize;/電電梯可到到達(dá)樓層層的數(shù)目目vecttor e_RellateedFlloorrVecctorr;/電電梯可達(dá)達(dá)到樓層層及其相相應(yīng)的標(biāo)標(biāo)志publiic:Elevvatoor(iint
26、E_EElevvatoorNuumbeer);/構(gòu)構(gòu)造函數(shù)數(shù)Eleevattor();/析析構(gòu)函數(shù)數(shù)stattic voiid ee_SeetTiimeNNeeddPerrFlooor(intt E_TimmeNeeedPPerFFlooor);/設(shè)設(shè)置電梯梯運(yùn)行速速度(多多少秒一一層)的的函數(shù)接接口stattic voiid ee_SeetMaaxPaasseengeerAmmounnt(iint E_MMaxPPasssenggerAAmouunt);/設(shè)設(shè)置電梯梯最大容容客量的的函數(shù)接接口voidd e_Simmulaatioon();/電電梯仿真真函數(shù)接接口voidd e_GettSu
27、mmmarry();/仿仿真結(jié)束束后顯示示電梯運(yùn)運(yùn)行時(shí)間間與空閑閑時(shí)間的的函數(shù)接接口voidd e_PriintCCurrrenttStaate();/打打印電梯梯當(dāng)前狀狀態(tài)的函函數(shù)接口口voidd e_FinndDeestiinattionnFlooor();/按按照既定定運(yùn)行規(guī)規(guī)則查找找電梯下下一目標(biāo)標(biāo)樓層的的函數(shù)接接口voidd e_AdddRellateedFlloorr(innt EE_FlloorrNummberr, FFlooor* E_FFlooorPttr);/添添加電梯梯可到達(dá)達(dá)樓層的的函數(shù)接接口voidd e_MakkeUppReqquesst(iint E_FFlooo
28、rNuumbeer);/響響應(yīng)樓層層向上乘乘梯請(qǐng)求求的函數(shù)數(shù)接口voidd e_MakkeDoownRRequuestt(innt EE_FlloorrNummberr);/響響應(yīng)樓層層向下乘乘梯請(qǐng)求求的函數(shù)數(shù)接口voidd e_NotticeeEleevattorAArriiveUUp(iint E_FFlooorNuumbeer);/通通知E_FlooorNNumbber樓樓層此電電梯到達(dá)達(dá)并且繼繼續(xù)向上上運(yùn)動(dòng)的的函數(shù)接接口voidd e_NotticeeEleevattorAArriiveDDownn(innt EE_FlloorrNummberr);/通通知E_FlooorNNumbb
29、er樓樓層此電電梯到達(dá)達(dá)并且繼繼續(xù)向下下運(yùn)動(dòng)的的函數(shù)接接口voidd e_NotticeeEleevattorLLeavveUpp(innt EE_FlloorrNummberr);/通通知E_FlooorNNumbber樓樓層此電電梯離開(kāi)開(kāi)并且繼繼續(xù)向上上運(yùn)動(dòng)的的函數(shù)接接口voidd e_NotticeeEleevattorLLeavveDoown(intt E_FlooorNNumbber);/通通知E_FlooorNNumbber樓樓層此電電梯離開(kāi)開(kāi)并且繼繼續(xù)向下下運(yùn)動(dòng)的的函數(shù)接接口voidd e_AdddPasssenngerr(innt EE_FlloorrNummberr, PPa
30、sssengger* E_PasssenngerrPtrr);/向向電梯中中添加乘乘客的函函數(shù)接口口,乘客客上電梯梯時(shí)調(diào)用用該函數(shù)數(shù)voidd e_RemmoveePasssenngerr(innt EE_FlloorrNummberr, PPasssengger* E_PasssenngerrPtrr);/從從電梯中中刪除乘乘客的函函數(shù)接口口,乘客客下電梯梯時(shí)調(diào)用用該函數(shù)數(shù)voidd e_SettDesstinnatiionFFlooor(iint E_DDesttinaatioonFlloorrNummberr);/設(shè)設(shè)置目標(biāo)標(biāo)樓層的的函數(shù)接接口,乘乘客設(shè)置置目標(biāo)樓樓層時(shí)調(diào)調(diào)用該函函數(shù)vo
31、idd e_SettEleevattorBBusyy();/乘乘客上下下電梯時(shí)時(shí)調(diào)用該該函數(shù),表表示電梯梯現(xiàn)在被被占用,其其他乘客客不能訪訪問(wèn)voidd e_SettEleevattorFFreee();/乘乘客上下下電梯時(shí)時(shí)調(diào)用該該函數(shù),表表示電梯梯現(xiàn)在沒(méi)沒(méi)有被占占用,其其他乘客客可以訪訪問(wèn)int e_GGetTTotaalRuunTiime();/獲獲取電梯梯總運(yùn)行行時(shí)間的的函數(shù)接接口int e_GGetTTotaalSttopTTimee();/獲獲取電梯梯總停止止時(shí)間的的函數(shù)接接口ElevvatoorSttatee e_GettCurrrenntSttatee();/獲獲取電梯梯當(dāng)前狀
32、狀態(tài)的函函數(shù)接口口int e_GGetCCurrrenttFlooorNNumbber();/獲獲取電梯梯當(dāng)前所所在樓層層的函數(shù)數(shù)接口booll e_IsFFulll();/判判斷電梯梯當(dāng)前是是否已滿(mǎn)滿(mǎn)的函數(shù)數(shù)接口booll e_IsBBusyy();/判判斷電梯梯當(dāng)前是是否被占占用的函函數(shù)接口口voidd e_RemmoveeInvvaliidPaasseengeer();/由由電梯自自己調(diào)用用,刪除除已經(jīng)下下電梯的的失效乘乘客;2. Flloorr類(lèi)的說(shuō)說(shuō)明2.1 FFlooor基類(lèi)類(lèi)Floorr類(lèi)是一一個(gè)虛基基類(lèi),它它定義了了樓層所所提供的的操作的的接口,如如下所示示:對(duì)該類(lèi)的說(shuō)說(shuō)明如下
33、下:classs Flloorrpubliic:virttuall vooid f_SSimuulattionn() = 00;/樓樓層仿真真函數(shù)接接口virttuall vooid f_PPrinntCuurreentSStatte() = 0;/打打印樓層層當(dāng)前狀狀態(tài)的函函數(shù)接口口virttuall innt ff_GeetFlloorrNummberr() = 00;/獲獲取樓層層號(hào)的函函數(shù)接口口virttuall vooid f_MMakeeReqquesst(iint F_EElevvatoorNuumbeer, Dirrecttionn F_ReqquesstDiir) = 00;
34、/發(fā)發(fā)出請(qǐng)求求函數(shù)接接口,供供乘客發(fā)發(fā)出乘梯梯請(qǐng)求時(shí)時(shí)調(diào)用virttuall vooid f_NNotiiceEElevvatoorArrrivve(iint F_EElevvatoorNuumbeer, Dirrecttionn F_EleevattorDDir) = 0;/通通知在本本層等待待的乘客客電梯到到達(dá)virttuall vooid f_NNotiiceEElevvatoorLeeavee(innt FF_EllevaatorrNummberr, DDireectiion F_EElevvatoorDiir) = 00;/通通知在本本層等待待的乘客客電梯離離開(kāi)virttuall v
35、ooid f_AAddPPasssenggerTToSttayiingCConttainner(Passsenngerr* FF_PaasseengeerPttr) = 00;/添添加乘客客到停留留容器里里,供乘乘客進(jìn)入入停留容容器時(shí)調(diào)調(diào)用virttuall vooid f_RRemoovePPasssenggerFFrommStaayinngCoontaaineer(PPasssengger* F_PasssenngerrPtrr) = 0;/從從停留容容器中移移除乘客客,供乘乘客停留留時(shí)間到到時(shí)進(jìn)入入等待容容器時(shí)調(diào)調(diào)用virttuall vooid f_AAddPPasssenggerTT
36、oWaaitiingCConttainner(Passsenngerr* FF_PaasseengeerPttr, Dirrecttionn F_PasssenngerrDirr) = 0;/添添加乘客客到等待待容器,供供乘客停停留時(shí)間間到時(shí)進(jìn)進(jìn)入等待待容器時(shí)時(shí)調(diào)用virttuall vooid f_RRemoovePPasssenggerFFrommWaiitinngCoontaaineer(PPasssengger* F_PasssenngerrPtrr, DDireectiion F_PPasssenggerDDir) = 0;/從從等待容容器中移移除乘客客,供乘乘客進(jìn)入入電梯時(shí)時(shí)調(diào)用v
37、irttuall vooid f_AAddRRelaateddEleevattor(intt F_EleevattorNNumbber, Ellevaatorr* FF_EllevaatorrPtrr) = 0;/添添加可到到達(dá)該層層的電梯梯信息以以相應(yīng)的的標(biāo)志;由Flooor類(lèi)派派生出BBotttomFFlooor、MMidddleFFlooor和TTopFFlooor這三三個(gè)子類(lèi)類(lèi),接下下來(lái)分別別介紹。2.2 BBotttomFFlooor底層層樓層類(lèi)類(lèi)BottoomFlloorr類(lèi)是對(duì)對(duì)底層樓樓層(11樓)的的抽象,它它有如下下的數(shù)據(jù)據(jù)結(jié)構(gòu)和和操作:對(duì)該類(lèi)的說(shuō)說(shuō)明如下下:classs B
38、oottoomFlloorr : pubblicc Flloorrint f_FFlooorNuumbeer;/樓樓層號(hào)int f_RRelaateddEleevattorSSizee;/可可到達(dá)該該樓層的的電梯的的數(shù)目vecttor f_RellateedEllevaatorrVecctorr;/可可到達(dá)該該樓層的的電梯列列表int f_SStayyinggConntaiinerrSizze;/該該層中停停留容器器中乘客客的數(shù)目目listt f_PPasssenggerSStayyinggConntaiinerr;/該該層中停停留容器器(停留留乘客列列表)int f_WWaittinggUp
39、CConttainnerSSizee;/該該層中等等待向上上容器中中乘客的的數(shù)目listt f_PPasssenggerWWaittinggUpCConttainner;/該該層中等等待向上上容器(等等待向上上乘客列列表)publiic:BotttomFFlooor(iint F_FFlooorNuumbeer);/構(gòu)構(gòu)造函數(shù)數(shù)BotttommFlooor();/析析構(gòu)函數(shù)數(shù)voidd f_Simmulaatioon();/樓樓層仿真真函數(shù)接接口voidd f_PriintCCurrrenttStaate();/打打印樓層層當(dāng)前狀狀態(tài)的函函數(shù)接口口int f_GGetFFlooorNuumbe
40、er();/獲獲取樓層層號(hào)的函函數(shù)接口口voidd f_AdddRellateedEllevaatorr(innt FF_EllevaatorrNummberr, EElevvatoor* F_EElevvatoorPttr);/添添加可到到達(dá)該層層的電梯梯信息以以及相應(yīng)應(yīng)的標(biāo)志志voidd f_NotticeeEleevattorAArriive(intt F_EleevattorNNumbber, Diirecctioon FF_EllevaatorrDirr);/通通知在本本層等待待的乘客客電梯到到達(dá)voidd f_NotticeeEleevattorLLeavve(iint F_EEl
41、evvatoorNuumbeer, Dirrecttionn F_EleevattorDDir);/通通知在本本層等待待的乘客客電梯離離開(kāi)voidd f_MakkeReequeest(intt F_EleevattorNNumbber, Diirecctioon FF_ReequeestDDir);/發(fā)發(fā)出請(qǐng)求求函數(shù)接接口,供供乘客發(fā)發(fā)出乘梯梯請(qǐng)求時(shí)時(shí)調(diào)用voidd f_AdddPasssenngerrToSStayyinggConntaiinerr(Paasseengeer* F_PPasssenggerPPtr);/添添加乘客客到停留留容器里里,供乘乘客進(jìn)入入停留容容器時(shí)調(diào)調(diào)用voidd
42、f_RemmoveePasssenngerrFroomSttayiingCConttainner(Passsenngerr* FF_PaasseengeerPttr);/從從停留容容器中移移除乘客客,供乘乘客停留留時(shí)間到到時(shí)進(jìn)入入等待容容器時(shí)調(diào)調(diào)用voidd f_AdddPasssenngerrToWWaittinggConntaiinerr(Paasseengeer* F_PPasssenggerPPtr, Diirecctioon FF_PaasseengeerDiir);/添添加乘客客到等待待容器,供供乘客停停留時(shí)間間到時(shí)進(jìn)進(jìn)入等待待容器時(shí)時(shí)調(diào)用voidd f_RemmoveePasss
43、enngerrFroomWaaitiingCConttainner(Passsenngerr* FF_PaasseengeerPttr, Dirrecttionn F_PasssenngerrDirr);/從從等待容容器中移移除乘客客,供乘乘客進(jìn)入入電梯時(shí)時(shí)調(diào)用voidd f_AdddPasssenngerrToWWaittinggUpCConttainner(Passsenngerr* FF_PaasseengeerPttr);/添添加乘客客到等待待向上容容器,供供乘客停停留時(shí)間間到時(shí)進(jìn)進(jìn)入等待待向上容容器時(shí)調(diào)調(diào)用voidd f_RemmoveePasssenngerrFroomWaaiti
44、ingUUpCoontaaineer(PPasssengger* F_PasssenngerrPtrr);/從從等待向向上容器器中移除除乘客,供供乘客進(jìn)進(jìn)入電梯梯時(shí)調(diào)用用voidd f_MakkeUppReqquesst(iint F_EElevvatoorNuumbeer);/發(fā)發(fā)出向上上請(qǐng)求函函數(shù)接口口,供乘乘客發(fā)出出向上乘乘梯請(qǐng)求求時(shí)調(diào)用用voidd f_NotticeeEleevattorAArriiveUUp(iint F_EElevvatoorNuumbeer);/通通知在本本層等待待的乘客客電梯到到達(dá)并且且接下來(lái)來(lái)會(huì)向上上運(yùn)動(dòng)voidd f_NotticeeEleevattorL
45、LeavveUpp(innt FF_EllevaatorrNummberr);/通通知在本本層等待待的乘客客電梯離離開(kāi)并且且接下來(lái)來(lái)會(huì)向上上運(yùn)動(dòng)voidd f_NotticeePasssenngerrEleevattorAArriiveUUp();/通通知在本本層等待待的乘客客本樓層層有哪些些電梯停停留、有有哪些電電梯到達(dá)達(dá)并且接接下來(lái)會(huì)會(huì)向上運(yùn)運(yùn)動(dòng),這這是留給給樓層調(diào)調(diào)用的函函數(shù)接口口,當(dāng)電電梯到達(dá)達(dá)某層樓樓,并且且接下來(lái)來(lái)將會(huì)向向上運(yùn)動(dòng)動(dòng)時(shí)樓層層調(diào)用該該函數(shù)通通知乘客客voidd f_RemmoveeInvvaliidPaasseengeerFrromSStayyinggConntaiin
46、err();/由由樓層自自己調(diào)用用,刪除除已經(jīng)離離開(kāi)隨機(jī)機(jī)停留容容器的失失效乘客客voidd f_RemmoveeInvvaliidPaasseengeerFrromWWaittinggConntaiinerr();/由由樓層自自己調(diào)用用,刪除除已經(jīng)離離開(kāi)等待待容器的的失效乘乘客voidd f_RemmoveeInvvaliidPaasseengeerFrromWWaittinggUpCConttainner();/由由樓層自自己調(diào)用用,刪除除已經(jīng)離離開(kāi)等待待向上容容器的失失效乘客客;2.3 MMidddleFFlooor中間間樓層類(lèi)類(lèi)MiddlleFlloorr類(lèi)是對(duì)對(duì)中間樓樓層(22至39
47、9樓)的的抽象,它它有如下下的數(shù)據(jù)據(jù)結(jié)構(gòu)和和操作:對(duì)該類(lèi)的說(shuō)說(shuō)明如下下:classs MiiddlleFlloorr : pubblicc Flloorrint f_FFlooorNuumbeer;/樓樓層號(hào)int f_RRelaateddEleevattorSSizee;/可可到達(dá)該該樓層的的電梯的的數(shù)目vecttor f_RellateedEllevaatorrVecctorr;/可可到達(dá)該該樓層的的電梯列列表int f_SStayyinggConntaiinerrSizze;/該該層中停停留容器器中乘客客的數(shù)目目listt f_PPasssenggerSStayyinggConntaii
48、nerr;/該該層中停停留容器器(停留留乘客列列表)int f_WWaittinggUpCConttainnerSSizee;/該該層中等等待向上上容器中中乘客的的數(shù)目listt f_PPasssenggerWWaittinggUpCConttainner;/該該層中等等待向上上容器(等等待向上上乘客列列表)int f_WWaittinggDowwnCoontaaineerSiize;/該該層中等等待向下下容器中中乘客的的數(shù)目listt f_PPasssenggerWWaittinggDowwnCoontaaineer;/該該層中等等待向下下容器(等等待向下下乘客列列表)publiic:Mid
49、ddleFFlooor(iint F_FFlooorNuumbeer);/構(gòu)構(gòu)造函數(shù)數(shù)MidddleeFlooor();/析析構(gòu)函數(shù)數(shù)voidd f_Simmulaatioon();/樓樓層仿真真函數(shù)接接口voidd f_PriintCCurrrenttStaate();/打打印樓層層當(dāng)前狀狀態(tài)的函函數(shù)接口口int f_GGetFFlooorNuumbeer();/獲獲取樓層層號(hào)的函函數(shù)接口口voidd f_AdddRellateedEllevaatorr(innt FF_EllevaatorrNummberr, EElevvatoor* F_EElevvatoorPttr);/添添加可到到達(dá)
50、該層層的電梯梯信息以以及相應(yīng)應(yīng)的標(biāo)志志voidd f_NotticeeEleevattorAArriive(intt F_EleevattorNNumbber, Diirecctioon FF_EllevaatorrDirr);/通通知在本本層等待待的乘客客電梯到到達(dá)voidd f_NotticeeEleevattorLLeavve(iint F_EElevvatoorNuumbeer, Dirrecttionn F_EleevattorDDir);/通通知在本本層等待待的乘客客電梯離離開(kāi)voidd f_MakkeReequeest(intt F_EleevattorNNumbber, Dii
51、recctioon FF_ReequeestDDir);/發(fā)發(fā)出請(qǐng)求求函數(shù)接接口,供供乘客發(fā)發(fā)出乘梯梯請(qǐng)求時(shí)時(shí)調(diào)用voidd f_AdddPasssenngerrToSStayyinggConntaiinerr(Paasseengeer* F_PPasssenggerPPtr);/添添加乘客客到停留留容器里里,供乘乘客進(jìn)入入停留容容器時(shí)調(diào)調(diào)用voidd f_RemmoveePasssenngerrFroomSttayiingCConttainner(Passsenngerr* FF_PaasseengeerPttr);/從從停留容容器中移移除乘客客,供乘乘客停留留時(shí)間到到時(shí)進(jìn)入入等待容容器時(shí)調(diào)
52、調(diào)用voidd f_AdddPasssenngerrToWWaittinggConntaiinerr(Paasseengeer* F_PPasssenggerPPtr, Diirecctioon FF_PaasseengeerDiir);/添添加乘客客到等待待容器,供供乘客停停留時(shí)間間到時(shí)進(jìn)進(jìn)入等待待容器時(shí)時(shí)調(diào)用voidd f_RemmoveePasssenngerrFroomWaaitiingCConttainner(Passsenngerr* FF_PaasseengeerPttr, Dirrecttionn F_PasssenngerrDirr);/從從等待容容器中移移除乘客客,供乘乘客
53、進(jìn)入入電梯時(shí)時(shí)調(diào)用voidd f_AdddPasssenngerrToWWaittinggUpCConttainner(Passsenngerr* FF_PaasseengeerPttr);/添添加乘客客到等待待向上容容器,供供乘客停停留時(shí)間間到時(shí)進(jìn)進(jìn)入等待待向上容容器時(shí)調(diào)調(diào)用voidd f_RemmoveePasssenngerrFroomWaaitiingUUpCoontaaineer(PPasssengger* F_PasssenngerrPtrr);/從從等待向向上容器器中移除除乘客,供供乘客進(jìn)進(jìn)入電梯梯時(shí)調(diào)用用voidd f_AdddPasssenngerrToWWaittinggD
54、owwnCoontaaineer(PPasssengger* F_PasssenngerrPtrr);/添添加乘客客到等待待向下容容器,供供乘客停停留時(shí)間間到時(shí)進(jìn)進(jìn)入等待待向下容容器時(shí)調(diào)調(diào)用voidd f_RemmoveePasssenngerrFroomWaaitiingDDownnConntaiinerr(Paasseengeer* F_PPasssenggerPPtr);/從從等待向向下容器器中移除除乘客,供供乘客進(jìn)進(jìn)入電梯梯時(shí)調(diào)用用voidd f_MakkeUppReqquesst(iint F_EElevvatoorNuumbeer);/發(fā)發(fā)出向上上請(qǐng)求函函數(shù)接口口,供乘乘客發(fā)出出向
55、上乘乘梯請(qǐng)求求時(shí)調(diào)用用voidd f_MakkeDoownRRequuestt(innt FF_EllevaatorrNummberr);/發(fā)發(fā)出向下下請(qǐng)求函函數(shù)接口口,供乘乘客發(fā)出出向下乘乘梯請(qǐng)求求時(shí)調(diào)用用voidd f_NotticeeEleevattorAArriiveUUp(iint F_EElevvatoorNuumbeer);/通通知在本本層等待待的乘客客電梯到到達(dá)并且且接下來(lái)來(lái)會(huì)向上上運(yùn)動(dòng)voidd f_NotticeeEleevattorAArriiveDDownn(innt FF_EllevaatorrNummberr);/通通知在本本層等待待的乘客客電梯到到達(dá)并且且接下來(lái)來(lái)
56、會(huì)向下下運(yùn)動(dòng)voidd f_NotticeeEleevattorLLeavveUpp(innt FF_EllevaatorrNummberr);/通通知在本本層等待待的乘客客電梯離離開(kāi)并且且接下來(lái)來(lái)會(huì)向上上運(yùn)動(dòng)voidd f_NotticeeEleevattorLLeavveDoown(intt F_EleevattorNNumbber);/通通知在本本層等待待的乘客客電梯離離開(kāi)并且且接下來(lái)來(lái)會(huì)向下下運(yùn)動(dòng)voidd f_NotticeePasssenngerrEleevattorAArriiveUUp();/通通知在本本層等待待的乘客客本樓層層有哪些些電梯停停留、有有哪些電電梯到達(dá)達(dá)并且接接下
57、來(lái)會(huì)會(huì)向上運(yùn)運(yùn)動(dòng),這這是留給給樓層調(diào)調(diào)用的函函數(shù)接口口,當(dāng)電電梯到達(dá)達(dá)某層樓樓,并且且接下來(lái)來(lái)將會(huì)向向上運(yùn)動(dòng)動(dòng)時(shí)樓層層調(diào)用該該函數(shù)通通知乘客客voidd f_NotticeePasssenngerrEleevattorAArriiveDDownn();/通通知在本本層等待待的乘客客本樓層層有哪些些電梯停停留、有有哪些電電梯到達(dá)達(dá)并且接接下來(lái)會(huì)會(huì)向下運(yùn)運(yùn)動(dòng),這這是留給給樓層調(diào)調(diào)用的函函數(shù)接口口,當(dāng)電電梯到達(dá)達(dá)某層樓樓,并且且接下來(lái)來(lái)將會(huì)向向下運(yùn)動(dòng)動(dòng)時(shí)樓層層調(diào)用該該函數(shù)通通知乘客客voidd f_RemmoveeInvvaliidPaasseengeerFrromSStayyinggConntai
58、inerr();/由由樓層自自己調(diào)用用,刪除除已經(jīng)離離開(kāi)隨機(jī)機(jī)停留容容器的失失效乘客客voidd f_RemmoveeInvvaliidPaasseengeerFrromWWaittinggConntaiinerr();/供供樓層自自己調(diào)用用,刪除除等待向向上和等等待向下下容器中中的失效效乘客voidd f_RemmoveeInvvaliidPaasseengeerFrromWWaittinggUpCConttainner();/由由樓層自自己調(diào)用用,刪除除已經(jīng)離離開(kāi)等待待向上容容器的失失效乘客客voidd f_RemmoveeInvvaliidPaasseengeerFrromWWaitti
59、nggDowwnCoontaaineer();/由由樓層自自己調(diào)用用,刪除除已經(jīng)離離開(kāi)等待待向下容容器的失失效乘客客;2.4 TTopFFlooor頂層層樓層類(lèi)類(lèi)TopFlloorr類(lèi)是對(duì)對(duì)頂層樓層層(400樓)的的抽象,它它有如下下的數(shù)據(jù)據(jù)結(jié)構(gòu)和和操作:對(duì)該類(lèi)的說(shuō)說(shuō)明如下下:classs ToopFlloorr : pubblicc Flloorrint f_FFlooorNuumbeer;/樓樓層號(hào)int f_RRelaateddEleevattorSSizee;/可可到達(dá)該該樓層的的電梯的的數(shù)目vecttor f_RellateedEllevaatorrVecctorr;/可可到達(dá)該該樓
60、層的的電梯列列表int f_SStayyinggConntaiinerrSizze;/該該層中停停留容器器中乘客客的數(shù)目目listt f_PPasssenggerSStayyinggConntaiinerr;/該該層中停停留容器器(停留留乘客列列表)int f_WWaittinggDowwnCoontaaineerSiize;/該該層中等等待向下下容器中中乘客的的數(shù)目listt f_PPasssenggerWWaittinggDowwnCoontaaineer;/該該層中等等待向下下容器(等等待向下下乘客列列表)publiic:TopFFlooor(iint F_FFlooorNuumbeer
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 柴油銷(xiāo)售合同模板
- 2024農(nóng)村土地流轉(zhuǎn)及發(fā)包合同書(shū)
- 2024商鋪?zhàn)赓U合同(奶茶店)
- 2024學(xué)校食堂供貨標(biāo)準(zhǔn)合同范本
- 2024年終止合同協(xié)議書(shū)解除合同協(xié)議書(shū)
- 2024年螺旋包裝機(jī)買(mǎi)賣(mài)合同
- 資產(chǎn)轉(zhuǎn)讓報(bào)價(jià)委托協(xié)議
- 2024貴陽(yáng)勞動(dòng)合同范本專(zhuān)業(yè)版范文
- 公司與旅行社合作契約示例
- 國(guó)際認(rèn)證委托協(xié)議書(shū)格式
- 婚姻心理學(xué)解讀包含內(nèi)容
- DZ/T 0462.3-2023 礦產(chǎn)資源“三率”指標(biāo)要求 第3部分:鐵、錳、鉻、釩、鈦(正式版)
- 備戰(zhàn)2024年高考英語(yǔ)考試易錯(cuò)點(diǎn)12 名詞性從句(4大陷阱)(解析版)
- 公務(wù)員歷史常識(shí)100題及一套完整答案
- 信息技術(shù)與高中英語(yǔ)教學(xué)融合的途徑
- 花籃拉桿式懸挑腳手架.計(jì)算書(shū)及相關(guān)圖紙
- 職業(yè)道德與法律說(shuō)課稿市公開(kāi)課一等獎(jiǎng)省賽課微課金獎(jiǎng)?wù)n件
- 《電力建設(shè)施工技術(shù)規(guī)范 第2部分:鍋爐機(jī)組》DLT 5190.2
- 史學(xué)概論完整版本
- 供水管網(wǎng)搶修管理課件
- 信訪維穩(wěn)工作培訓(xùn)
評(píng)論
0/150
提交評(píng)論