互聯(lián)網(wǎng)科技項目管理模板_第1頁
互聯(lián)網(wǎng)科技項目管理模板_第2頁
互聯(lián)網(wǎng)科技項目管理模板_第3頁
互聯(lián)網(wǎng)科技項目管理模板_第4頁
互聯(lián)網(wǎng)科技項目管理模板_第5頁
已閱讀5頁,還剩10頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

給大家介紹對象使用對象進(jìn)行編程是C++的核心,也是我們常說的C++比C“高級”的重要根據(jù)之一。但是我不希望大家因為這樣就對這個看起來很深奧的概念望而生畏。。。所以我要明確的告訴大家:對象的本質(zhì)上不過是一種新的數(shù)據(jù)類型,只不過它擁有無限的潛力。。。打個比方就像再美麗的女孩本質(zhì)上不過也是女人,只不過她擁有無限的選擇。。。給大家介紹對象使用對象進(jìn)行編程是C++的核心,也是我們常說的給大家介紹對象我們從一個類開始,首先類是一個模型。當(dāng)我們?yōu)檫@個類創(chuàng)建實例的時候,也就是對象本身。這跟我們之前講解的定義和使用結(jié)構(gòu)的過程很相似,但是這更有擴(kuò)展性和前瞻性。對于初學(xué)者而言,我們先給大家一個區(qū)別:對象的內(nèi)部可以有變量和函數(shù),而結(jié)構(gòu)通常只由各種變量構(gòu)成。我們知道,要找對象,內(nèi)心先要有對象的模型,不然怎么知道你找到后是豬扒還是牛扒?!給大家介紹對象我們從一個類開始,首先類是一個模型。當(dāng)我們?yōu)檫@創(chuàng)建簡單的類因此,我們首先需要知道的一件事情是如何編寫一個簡單對象的模型–類類(Class)就像是一副藍(lán)圖,它決定一個對象將是什么樣的(具備什么樣的屬性、功能)。所以O(shè)OP過程的第一步是創(chuàng)建一個類,而每個類跟變量一樣都有一個名字,我們就從如何聲明一個類說起:classMyFirstClass{};創(chuàng)建簡單的類因此,我們首先需要知道的一件事情是如何編寫一個簡創(chuàng)建簡單的類就這樣,我們創(chuàng)建了一個類!雖然它什么都干不了,但它是一個起點,一個成功的開始。注意,類名的第一個字母采用大寫是一種習(xí)慣的上的標(biāo)準(zhǔn),但不是硬性規(guī)定。還有在類聲明末尾,必須有一個分號,這一點跟C++結(jié)構(gòu)情況相同。類由變量和函數(shù)組成,對象將使用那些變量來存儲信息,調(diào)用那些函數(shù)來完成操作。所以人們常常會看到一些專門術(shù)語:類里邊的變量成為屬性,函數(shù)成為方法。注意,他們的本質(zhì)沒有改變。創(chuàng)建簡單的類就這樣,我們創(chuàng)建了一個類!雖然它什么都干不了,但讓我們來造輛車classCar{public:std::stringcolor;std::stringengine;floatgas_tank;unsignedintWheel;}//先動手,別等咯~我們需要在聲明變量之前先寫出單詞”public:”稍后我們將對此做法的理由作出解釋!讓我們來造輛車classCar讓我們來造輛車剛剛我們聲明了一輛車的簡單屬性,現(xiàn)在我們應(yīng)該讓他能跑起來吧?那么我們應(yīng)該為類定義一些方法,其實也就是定義一些函數(shù)罷了。創(chuàng)建個人函數(shù)也是兩個步驟的過程:先創(chuàng)建函數(shù)的原型(聲明),再描述該函數(shù)本身實現(xiàn)過程。給類添加方法如出一轍:先在類的聲明里創(chuàng)建一個方法的原型稍后再實現(xiàn)這個方法讓我們來造輛車剛剛我們聲明了一輛車的簡單屬性,現(xiàn)在我們應(yīng)該讓讓我們來造輛車classCar{public:std::stringcolor;std::stringengine;floatgas_tank;unsignedintWheel;voidfill_tank(floatliter);//方法的聲明:方法是”加油”,參數(shù)是”公升”}讓我們來造輛車classCar讓我們來造輛車現(xiàn)在我們的Car類有了一個名為fillTank的方法,它只有一個輸入?yún)?shù),不需要任何返回值。但是我們只有他的原型(聲明),想要使用它,我們還需要對這個函數(shù)進(jìn)行正式的定義(即告訴系統(tǒng)如何去實現(xiàn)它)。方法的定義通常安排在類聲明的后面:voidCar::fillTank(floatliter){gas_tank+=liter;}讓我們來造輛車現(xiàn)在我們的Car類有了一個名為fillTan讓我們來造輛車我們發(fā)覺作用域解析操作符(::),作用是告訴編譯器這個方法存在于何處,或者說是屬于哪一個類。其實我們對這個不應(yīng)該感到陌生,從一個開始我就不提倡usingnamespacestd;這樣偷懶的做法,所以我們是std::cout。。。事實上std::cout所引用的是std里定義的cout,而std::string數(shù)據(jù)類型其實也是一個對象。我們一直在使用對象,只是自己還不知道罷了。讓我們來造輛車我們發(fā)覺作用域解析操作符(::),作用是告訴編Payattention面向?qū)ο缶幊碳夹g(shù)(object-orientedprogramming)可以說是面向過程技術(shù)(proceduralprogramming)的替代品。面向過程技術(shù)關(guān)注的是對數(shù)據(jù)進(jìn)行處理的過程,OOP技術(shù)關(guān)注的是對數(shù)據(jù)進(jìn)行怎樣的處理。對象與結(jié)構(gòu)有很多相似之處,但前者還可以有它們自己的函數(shù)。記住這點區(qū)別對掌握OOP技術(shù)的要領(lǐng)很有幫助。Payattention面向?qū)ο缶幊碳夹g(shù)(object-oPayattention有些程序員喜歡把類的聲明和類的函數(shù)的定義分別存入兩個不同的文件,前者存入.h頭文件,后者存入相應(yīng)的.cpp文件。這點今后我們會討論。C++允許在類里聲明常量,但不允許對它進(jìn)行賦值classCar{public: constfloatTANKSIZE=85;//出錯@_@}Payattention有些程序員喜歡把類的聲明和類的函數(shù)Payattention繞開這一限制的方法就是創(chuàng)建一個靜態(tài)常量classCar{public:staticconstfloatFULL_GAS=85;}這種做法還有其他更高明的含義,以后我們將逐步介紹給大家。Payattention繞開這一限制的方法就是創(chuàng)建一個靜態(tài)Payattention類似于使用結(jié)構(gòu)的情況,可以在聲明某個類的同時立刻創(chuàng)建一些該類的對象:classCar{。。。。。。}car1,car2;這種做法在C++里是允許的。但作為一種良好的編程習(xí)慣,應(yīng)該避免這種做法!就像我佩服那些自殺的人的勇氣,但我不做!Payattention類似于使用結(jié)構(gòu)的情況,可以在聲明某Payattention最后,假設(shè)我們有以下代碼:Carcar1,car2;car1.setColor(“WHITE”);。。。。。。car2=car1;把一個對象賦值給另一個同類的對象

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論