freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

面向?qū)ο蟪绦蛟O(shè)計(jì)課程設(shè)計(jì)指導(dǎo)書-文庫吧資料

2025-06-15 13:12本頁面
  

【正文】 .出圈游戲之二 4.退出程序 選擇 14: 1 解一元二次方程 1.解一元二次方程 2.出圈游戲之一 3.出圈游戲之二 4.退出程序 選擇 14: 2 出圈游戲之一 1.解一元二次方程 2.出圈游戲之一 3.出圈游戲之二 4.退出程序 選擇 14: 3 出圈游戲之二 1.解一元二次方程 2.出圈游戲之一 3.出圈游戲之二 4.退出程序 選擇 14: 5 輸入錯(cuò)誤,重選 14: a 輸入錯(cuò)誤,重選 14: 0 輸入錯(cuò)誤,重選 14: 4 再見! 菜單程序的設(shè)計(jì)思想: 首先編寫一個(gè)菜單驅(qū)動(dòng)程序,輸入 14 之間的任意一 個(gè)數(shù)字,即可進(jìn)入相應(yīng)選擇項(xiàng)。 設(shè)計(jì)一個(gè)菜單程序 首先設(shè)計(jì)一個(gè)菜單程序,其設(shè)計(jì)要求如下: 1.菜單內(nèi)容 程序運(yùn)行后,給出 4 個(gè)菜單項(xiàng)的內(nèi)容和輸入提示。本章的任務(wù)是設(shè)計(jì)一個(gè)比較實(shí)用的菜單,通過菜單選擇不同的功能。 210: return 0。 207: (Product(Car vacuum, ), 2)。 205: (Product(Toaster, ), 3)。s Small Appliances, 202: 100 Main Street, Anytown, CA, 98765)。 195: 196: cout \nAMOUNT DUE: $ amount_due。 i ()。 191: 192: double amount_due = 0。 i ()。 187: cout 188: \n\nDescription Price Qty Total\n。 181: } 182: 183: void Invoice::print() const 184: { 185: cout I N V O I C E\n\n。 175: } 176: 177: void Invoice::add(Product p, int q) 178: { 179: Item it(p, q)。 170: }。 167: private: 168: Address billing_address。 157: /** 158: Adds a charge for a product to this invoice. 159: param aProduct the product that the customer ordered 160: param quantity the quantity of the product 161: */ 162: void add(Product p, int quantity)。 142: } 143: 144: void Address::print() const 145: { 146: cout name \n street \n 147: city , state zip \n。 140: state = st。 138: street = s。 130: }。 128: string state。 126: string street。 120: /** 121: Prints the address. 122: */ 123: void print() const。 109: } 110: 111: /** 112: Describes a mailing address. 113: */ 114: class Address 115: { 116: public: 117: Address()。 i++) 104: cout 。 103: for (int i = 1。 097: 098: cout description。 091: } 092: 093: void Item::print() const 094: { 095: const int COLUMN_WIDTH = 30。 085: quantity = q。 075: 076: 077: Item::Item() 078: { 079: quantity = 0。 073: int quantity。 066: 067: /** 068: Prints this item. 069: */ 070: void print() const。 060: Item(Product p, int q)。 046: } 047: 048: double Product::get_price() const 049: { 050: return price。 040: price = p。 031: 032: Product::Product() 033: { 034: price = 0。 029: double price。 020: 021: /** 022: Gets the product price. 023: return the unit price 024: */ 025: double get_price() const。 014: Product(string d, double p)。下面給出了該范例的完整程序: 001: include iostream 002: include string 003: include vector 004: 005: using namespace std。這樣就實(shí)現(xiàn)了一 個(gè)完整的程序。 其他成員函數(shù)的實(shí)現(xiàn)也同樣直觀,在此就不詳細(xì)討論了。其實(shí)現(xiàn)如下: ? Double Item::getTotalPrice() ? { ? return () * quantity。 對于成員函數(shù)的視線就比較容易。 ? int quantity。 從 UML 圖中可以看出, Item 類與 Product 類關(guān)聯(lián)時(shí),還需要存儲(chǔ)相應(yīng)產(chǎn)品的數(shù)量。 ? VectorItem items。首先,從類 Invoice 開始,類 Invoice 與類 Address 和 Item 類關(guān)聯(lián),所以每個(gè) Invoice 類應(yīng)包含一個(gè) Address類對象和若干個(gè) Item 類對象。 實(shí)現(xiàn) 最后,可以開始實(shí)現(xiàn)這些類了。 對類進(jìn)行文檔化的工作可以帶來一些好處。 doxygen 便是一個(gè)注釋提 取應(yīng)用程序。 ? }。 ? ? /** ? Describes a quantity to an article to purchase and its price ? */ ? class Item ? { ? ? public: ? /** ? Computes the total cost of this item ? return the total price ? */ ? double get_total_price() const。 ? /** ? Prints the invoice. ? */ Item Product Address Invoice 圖 發(fā)票類之間關(guān)系 ? void print() const。 在 CRC 卡片中僅包含類的職責(zé),即類成員函數(shù)的高層描述,因此,還需要進(jìn)一步給出其參數(shù)和返回類型。對于類可以簡單地給出注釋。在本例中不存在繼承關(guān)系,圖 顯示了發(fā)票類之間的關(guān)系。類 Product 對象存儲(chǔ)在 Item 類對象中,而不是直接存儲(chǔ)在類 Invoice 類對象中。但是一個(gè) Invoice 類對象在添加一個(gè)產(chǎn)品時(shí)并不需要保存產(chǎn)品類對象,因?yàn)楫a(chǎn)品作為一個(gè)產(chǎn)品項(xiàng)對象中的一部分已經(jīng)存在,并由產(chǎn)品項(xiàng)對象來負(fù)責(zé)保護(hù)它。 接下來要判斷這些依賴關(guān)系中哪些類又進(jìn)一步構(gòu)成關(guān)聯(lián)關(guān)系。在本例中,類 Invoice 依賴于類Address、類 Item 和類 Product。 至此,已經(jīng)有了一個(gè) CRC 卡片集,并完成了 CRC 卡片中相應(yīng)的內(nèi)容。 最后,在發(fā)票中必須能夠增加產(chǎn)品及其數(shù)量,并將其打印在結(jié)果中。 那么如何獲得產(chǎn)品項(xiàng)的小計(jì)金額呢?首先應(yīng)查詢相應(yīng)產(chǎn)品的單價(jià),再與產(chǎn)品的數(shù)量相乘即可得到該小計(jì)金額。即,在類 Invoice 的協(xié)作者一欄中添加類 Address 和類 Item: 作為發(fā)票的一部分,類 Invoice 還需要計(jì)算合計(jì)金額。 因此,類 Invoice 的成員函數(shù) print 要調(diào)用類 Address 和類 Item的成員函數(shù) print。 因?yàn)槌绦虻哪康氖谴蛴“l(fā)票,可在相應(yīng)類的 CRC 卡片上做如下記錄: 發(fā)票如何實(shí)現(xiàn)打印功能?打印包括票據(jù)地址、所有產(chǎn)品項(xiàng)和合計(jì)金額。 在進(jìn)行了這樣的分析之后,現(xiàn)在有如下 4 個(gè)候選類: 發(fā)票( Invoice) 地址( Address) 產(chǎn)品項(xiàng)( Item) 產(chǎn)品( Product) 上述每項(xiàng)各自都代表了一個(gè)單獨(dú)的概念,從而可以為它們設(shè)計(jì) 4個(gè)類。 ) 考慮上述名詞:產(chǎn)品名稱和單價(jià)是 Product 類的屬性;但數(shù)量不是 Product 類的一個(gè)屬性,如何處理數(shù)量?可以設(shè)立一個(gè) Item 類來記錄產(chǎn)品和產(chǎn)品數(shù)量。類對應(yīng)問題描述中的名詞。只需簡單地在測試驅(qū)動(dòng)中提供發(fā)票所需的項(xiàng),然后打印即可。例如: ? Sam39。程序?qū)⒋蛴∑睋?jù)地址、產(chǎn)品項(xiàng)列表、合計(jì) 金額。一個(gè)發(fā)票列出了一定數(shù)量產(chǎn)品的費(fèi)用。讀者也可以嘗試用其他方法來取代下面的步驟,并比較二者之間的效果。這對于讀者在實(shí)際更為復(fù)雜的系統(tǒng)中應(yīng)用這些方法也是很有幫助的。 在本節(jié)中,將通過一個(gè)簡單的例子完整地實(shí)現(xiàn)面向?qū)ο蟮脑O(shè)計(jì)方法。例如,有許多技術(shù)可以用來描述對象場景。設(shè)計(jì)階段的成果馬上就能應(yīng)用于實(shí)現(xiàn)階段。 這 5 個(gè)步驟對于初學(xué)編程的人來說特別有效。但在此并不提倡花費(fèi)精力對這幾個(gè)概念進(jìn)行嚴(yán)格的區(qū)分。 事實(shí)上,關(guān)聯(lián)、聚集和組成之間的區(qū)別很微妙,即使是有經(jīng)驗(yàn)的設(shè)計(jì)者都很難區(qū)分。也就是說,如果對應(yīng)的“整體”消亡了,那么相應(yīng)的“部分”也隨之不復(fù)存在。但是,類 BankAccount 和類 Person 之間并不構(gòu)成聚集關(guān)系,盡管可以從一個(gè)銀行賬戶中獲取一個(gè)客戶,即賬戶所有者,但從概念上講,二者之間并不構(gòu)成“整體 部分”關(guān)系。例如,類 Company和類 Employee之間就是一種聚集關(guān)系。 聚集( aggregation)關(guān)系是一種程度更深 的關(guān)聯(lián)關(guān)系。關(guān)聯(lián)的名稱描述了該關(guān)聯(lián)的特征;角色用來標(biāo)注關(guān)聯(lián)雙方針對對方所扮演的角色;重?cái)?shù)則表示關(guān)聯(lián)一方對應(yīng)對方的對象數(shù)目。但是,一些設(shè)計(jì)者將這種沒有方向的關(guān)聯(lián)關(guān)系視為“未定”關(guān)聯(lián),即目前還不能確定操作方向。將類 Tire和類 Vehicle設(shè)計(jì)成這種雙向關(guān)聯(lián)也許有些牽強(qiáng),但是要考慮類 Employee 和類 Company 之間的關(guān)系,則是一個(gè)很好的雙向關(guān)聯(lián)關(guān)系的范例:即一個(gè)公司需要維護(hù)一個(gè)員工列表,而每名員工對象也應(yīng)維護(hù) 一個(gè)指向?qū)?yīng)公司的指針。例如,給定一個(gè) Vehicle類,則可以操作 Tire類對象;反之,給定一個(gè) Tire類對象,卻不能確定它屬于哪一個(gè) Vehicle類對象。 在本書中 使用的關(guān)聯(lián)關(guān)系稱為單向關(guān)聯(lián)( directed association)關(guān)系。 在 UML類圖中,關(guān)聯(lián)關(guān)系是最為復(fù)雜的關(guān)系,而且表示方法尚有待進(jìn)一步標(biāo)準(zhǔn)化。 另外,如果一個(gè)類的某一個(gè)屬性是另一個(gè)類對象,從而使該類與其他類構(gòu)成關(guān)聯(lián)關(guān)系,則將其作為關(guān)聯(lián)關(guān)系畫出,而不必作為類的一個(gè)屬性列出。有時(shí),在類圖中并不需要列出該類的所有屬性和成員函數(shù)。 在類圖中,代表類的矩形框被分割成上中下三部分,分別填入該類的類名、屬性和成員函數(shù)。但是,類 Time應(yīng)該有 seconds,minutes 和 hours這三個(gè)屬性,但實(shí)際上該類中并沒有將他們存儲(chǔ)為相應(yīng)的數(shù)據(jù)成員。例如, name 和 price就是類 Product 的屬性。 表 31 UML類圖中的屬性和成員函數(shù) 有時(shí),用類圖描述類的屬性和成員函數(shù)(又稱為方法)是很有用的。至此,已經(jīng)介紹了依賴、關(guān)聯(lián)、繼承等三種關(guān)系的UML 表示。 對于一個(gè) Purse 類對象,不必包含 Coin 類對象,只需在 Purse 類的合計(jì)金額計(jì)算方法中加上硬幣的值,而不必在 Purse 類對象中存儲(chǔ)一個(gè) Coin 類對象。當(dāng)一個(gè)類與另一個(gè)類存在依賴關(guān)系,則該類以某種方式與另一個(gè)類的對象發(fā)生聯(lián)系;但它并不要求另一個(gè)類對象
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計(jì)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1