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

正文內(nèi)容

06標(biāo)準(zhǔn)c++與字符串(文件)

 

【正文】 +中合法n 在枚舉的使用中,C++比C更嚴(yán)格。ssn = spring。 // 在C中可以,但在C++中是一個(gè)錯(cuò)誤l 指向void的指針在C++中不能把指向void的指針,不經(jīng)顯示轉(zhuǎn)換,而直接賦給其它類(lèi)型的指針。void *pv。 // 在C和C++中都可以l 布爾類(lèi)型:C++中的布爾類(lèi)型bool和值true與false都是關(guān)鍵字。l 復(fù)數(shù)類(lèi)型:在C99中可以通過(guò)關(guān)鍵字_Complex和_Imaginary來(lái)使用內(nèi)置的復(fù)數(shù)類(lèi)型。l 標(biāo)準(zhǔn)C++中目前所沒(méi)有的C99特性:n 指定初始化條目;n 復(fù)合初始化條目;n 受限指針;n 變長(zhǎng)數(shù)組;n 彈性數(shù)組成員;n long long和unsigned long long類(lèi)型;(VC05支持)n 可移植的整數(shù)類(lèi)型;n 通用字符名;(VC05支持)n 附加的數(shù)學(xué)庫(kù)函數(shù);n ;n 若干預(yù)定義的標(biāo)識(shí)符,如__func__;n 具有可變數(shù)目的參數(shù)宏。僅僅靠面向過(guò)程的編程技術(shù),就顯得有點(diǎn)力不從心了。使得現(xiàn)在的C++,成為了一種同時(shí)具有面向過(guò)程、面向?qū)ο蠛头盒途幊痰奶卣?,功能?qiáng)大、運(yùn)行高效、使用廣泛的混合型程序設(shè)計(jì)語(yǔ)言。經(jīng)歷了手工操作(控制面板)、機(jī)器語(yǔ)言、匯編語(yǔ)言、宏匯編語(yǔ)言、高級(jí)語(yǔ)言和第4代語(yǔ)言等多個(gè)階段。主要有:l 面向?qū)ο螅∣O = ObjectOriented)——針對(duì)問(wèn)題的面向?qū)ο蟮募夹g(shù),通過(guò)類(lèi)的繼承和對(duì)象的多態(tài)來(lái)實(shí)現(xiàn)對(duì)象的重用;l 泛型編程(generic programming)——面向算法的泛型編程技術(shù),則通過(guò)模版、容器和迭代器等來(lái)實(shí)現(xiàn)源代碼塊的重用;l 組件編程(ponents programming)——面向方案和分布式計(jì)算的組件編程技術(shù),通過(guò)功能封裝和接口標(biāo)準(zhǔn)化,實(shí)現(xiàn)了軟件模塊的組合和共享;l 面向方面(AO = AspectOriented)——最新的面向方面的編程,則利用不同問(wèn)題所具有的共同特性,從某個(gè)方面出發(fā),著眼于關(guān)注點(diǎn),開(kāi)發(fā)出具有多量化(適用于多個(gè)問(wèn)題中)和不知覺(jué)性(對(duì)程序員透明)的程序,也達(dá)到了代碼共享和模塊重用的目的。模塊共享對(duì)象重用源代碼重用面向方案組件編程泛型編程對(duì)象編程面向問(wèn)題面向算法軟件重用代碼共享方面編程面向方面問(wèn)題分解軟件基礎(chǔ)面向算法過(guò)程編程結(jié)構(gòu)化程序設(shè)計(jì)函數(shù)調(diào)用↓ 目標(biāo)代碼重用(2)面向?qū)ο竺嫦驅(qū)ο缶幊痰娜齻€(gè)基本特征是:l 封裝(encapsulation)—— 是對(duì)問(wèn)題的抽象,以達(dá)到信息隱藏的目的。(3)基本概念面向?qū)ο蟮幕靖拍睿海?lèi)似的概念多、表達(dá)不夠準(zhǔn)確、各處的用法各異)l 抽象(abstraction)—— 一個(gè)問(wèn)題的本質(zhì)特征。封裝意味著將數(shù)據(jù)及相關(guān)函數(shù)打包到一個(gè)單一的單元(類(lèi))中。 CPoint p。必須在接口的派生類(lèi)中,實(shí)現(xiàn)接口的全部方法。方法是類(lèi)要做的事情。Simula語(yǔ)言是在A(yíng)lgol60基礎(chǔ)上,加入了對(duì)象、類(lèi)和繼承等概念后開(kāi)發(fā)出來(lái)的,它在OOP的歷史中占有重要地位。inheritance(繼承)”和“Objectoriented programming(面向?qū)ο蟮某绦蛟O(shè)計(jì))”。2)C++的歷史與發(fā)展(1)歷史1979年,貝爾實(shí)驗(yàn)室的計(jì)算機(jī)科學(xué)家,丹麥人Bjarne Stroustrup(~bs/)在Simula 67的啟發(fā)下,將C語(yǔ)言擴(kuò)展為帶類(lèi)的C (C with Classes),1983年Rick Mascitti將其命名為C++。1990年1月1日Margaret A. Ellis和Bjarne Stroustrup出版了《The Annotated C++ Reference Manual(帶注釋的C++參考手冊(cè))》。1994年7月,ANSI/ISO C++標(biāo)準(zhǔn)委員會(huì),通過(guò)了Alexander Stepanov提出的STL(Standard Template Library標(biāo)準(zhǔn)模板庫(kù))方案。1993年推出C++的第3版,增加了模板、異常處理和嵌套類(lèi)等新特性.1994年3月29日Bjarne Stroustrup出版了《The Design and Evolution of C++(C++的設(shè)計(jì)和演化)》。C++的第1版,提供了面向?qū)ο蟪绦蛟O(shè)計(jì)的基本特征:類(lèi)和對(duì)象、單繼承、虛函數(shù)、公有/私有成員的訪(fǎng)問(wèn)控制、函數(shù)重載等。但是,因特網(wǎng)的發(fā)展和萬(wàn)維網(wǎng)的流行,又催生了另一個(gè)重要的OOP語(yǔ)言——Java(1995年)。它受到了Sketchpad和Simula的影響,但是Smalltalk被設(shè)計(jì)成一個(gè)全動(dòng)態(tài)系統(tǒng)的純OOP,程序的所有成分都是對(duì)象(為了提高運(yùn)行效率,C++/Java/C 中的基本數(shù)據(jù)類(lèi)型都不是對(duì)象),對(duì)象可以被動(dòng)態(tài)地創(chuàng)建、修改和銷(xiāo)毀。1963年Ivan Sutherland在其博士論文中所編寫(xiě)的計(jì)算機(jī)程序Sketchpad,應(yīng)用了對(duì)象技術(shù)。(在C++中,也把類(lèi)的公用成員函數(shù)叫做接口)l 屬性(attribute)—— 類(lèi)和接口中的數(shù)據(jù)信息,又叫數(shù)據(jù)成員(data member)或成員變量(member variable)。是OOP中對(duì)象重用的核心概念l 子類(lèi)(subclass)—— 繼承自另一個(gè)類(lèi)的派生類(lèi)(derived class)l 超類(lèi)(superclass父類(lèi))—— 被另一個(gè)類(lèi)繼承的基類(lèi)(base class)l 虛函數(shù)(virtual function)—— 可以在子類(lèi)中被覆蓋(override)的函數(shù)l 純虛函數(shù)(pure virtual function)—— 只有聲明沒(méi)有定義的函數(shù),必須在派生類(lèi)中被覆蓋l 抽象類(lèi)(abstract class)—— 至少包含一個(gè)純虛函數(shù)的類(lèi),不能被實(shí)例化l 具體類(lèi)(concrete class)—— 可以實(shí)例化的類(lèi),不包含純虛函數(shù)l 接口(interface)—— 純抽象的類(lèi),類(lèi)的模版。例如int是整數(shù)的模版、CPoint是點(diǎn)的模版l 對(duì)象(object)—— 問(wèn)題中的事物,類(lèi)的實(shí)例(變量),擁有數(shù)據(jù)和功能。抽象是在事物的周?chē)L制透明的盒子,是定義事物接口的行為l 信息隱藏(information hiding)—— 限制外部對(duì)類(lèi)屬性(數(shù)據(jù)成員)的訪(fǎng)問(wèn)l 封裝(encapsulation)—— 將某種保密和隱匿應(yīng)用到類(lèi)中的數(shù)據(jù)和一些方法(函數(shù)或子例程)上。既可以保護(hù)數(shù)據(jù)不被他人惡意或大意地修改,又能防止其他程序員編寫(xiě)高耦合度的代碼,還方便了今后對(duì)對(duì)象內(nèi)部的修改和升級(jí);l 繼承(inheritance)—— 利用問(wèn)題和事物的相似性,通過(guò)類(lèi)的(多層)繼承機(jī)制,可以達(dá)到減少軟件開(kāi)發(fā)難度和重用已有對(duì)象的屬性和方法之目的;l 多態(tài)(polymorphism)—— 同一操作或響應(yīng),可以同時(shí)針對(duì)多個(gè)可選的類(lèi)型和對(duì)象,并且能夠自動(dòng)在它們中間選擇最合適的來(lái)進(jìn)行。結(jié)構(gòu)化的面向過(guò)程的編程,采用自頂向下的方法,對(duì)問(wèn)題進(jìn)行逐級(jí)分解。(1)軟件重用在現(xiàn)代高級(jí)語(yǔ)言中,使用了有多種不同的編程思想和軟件技術(shù)。2003年,ISO又推出了它的第2版(ISO/IEC 14882:2003),對(duì)第1版中的錯(cuò)誤進(jìn)行了修訂。1985年,Bjarne Stroustrup對(duì)C語(yǔ)言進(jìn)行了擴(kuò)充,在保留C語(yǔ)言?xún)?yōu)點(diǎn)的基礎(chǔ)上,添加了面向?qū)ο蟮奶卣骱凸δ芎?,開(kāi)發(fā)出了C++語(yǔ)言。l ISO/IEC 9899:1999 Programming languages – C()l ISO/IEC 9899:TC2()Programming languages – C(Committee Draft)(ISO C CD 200556 )其中,C標(biāo)準(zhǔn)及草案的文檔見(jiàn)我的網(wǎng)絡(luò)硬盤(pán)2.C++作為結(jié)構(gòu)化的面向過(guò)程的編程語(yǔ)言,C已經(jīng)是非常優(yōu)秀的了,它簡(jiǎn)單、高效、靈活、功能強(qiáng)大。()l 內(nèi)聯(lián)函數(shù):與全局常型變量類(lèi)似,C99的內(nèi)聯(lián)函數(shù)默認(rèn)是外部鏈接的,而C++的內(nèi)聯(lián)函數(shù)則默認(rèn)是內(nèi)部鏈接的。l 可選的拼寫(xiě):and、or和not_eq等在C++中都是關(guān)鍵字;。 // 在C和C++中都可以pi = pv。例如:int a[4] = {1, 2, 3, 4}。 // 在C中會(huì)發(fā)出警告,但在C++中是一個(gè)錯(cuò)誤ssn = (enum season)1。例如:enum season {spring, summer, autumn, winter}。例如:enum season {spring, summer, autumn, winter}。struct box rect。 int y。struct point p1。 // 在C++中合法,在C中非法l 結(jié)構(gòu)和聯(lián)合n 聲明了一個(gè)帶有標(biāo)記(tag)的結(jié)構(gòu)或聯(lián)合之后,在C++可以直接用此標(biāo)記作為類(lèi)型名,但是在C中則不行(必須前面帶有struct關(guān)鍵字才可以)。 // 在C中則創(chuàng)建了一個(gè)變長(zhǎng)數(shù)組,還需要給它分配空間n 在C++中可以使用一個(gè)已經(jīng)初始化了的常型變量給另一個(gè)常型變量賦值,但在C中這樣做是非法的。n 在C++中常型變量可以用來(lái)聲明數(shù)組的大小,但是在C中不行。在C和C++中都是可以的,不過(guò)會(huì)發(fā)出截?cái)嗑妫ㄗ兞縞的值為D)l const修識(shí)符n 在缺省情況下,全局的常型變量,即在函數(shù)體外部聲明的,例如:const double PI = 。在C中常量A被存儲(chǔ)為一個(gè)int值,但變量ch則只占1個(gè)字節(jié);而在C++中常量A和變量ch都只占1個(gè)字節(jié)。這是因?yàn)椋我獾淖詣?dòng)類(lèi)型轉(zhuǎn)換,會(huì)造成很多很難查出的程序問(wèn)題。int main() { …… myfun(20,45)。在格式化I/O函數(shù)中,可以用%lc和%ls修識(shí)符來(lái)顯示寬字符及其串?dāng)?shù)據(jù)6)C和C++的差別雖然C++是C的超集,但是它們之間還是存在細(xì)小的差別,特別是C99增加的新特性中,有許多當(dāng)前的C++標(biāo)準(zhǔn)還不支持。 pDCTextOut(10, 10, buf)。量39。 // 如果變量名后不加1和2,// 則報(bào)變量重名的錯(cuò)誤 變量1 *= \u53D8\u91CF2。變39。可以使用\u或\U開(kāi)頭的4個(gè)(16位)或8個(gè)(32位)十六進(jìn)制數(shù)字(\uhhhh、\UHHHH、\uhhhhhhhh、\UHHHHHHHH)來(lái)表示擴(kuò)展字符。(5)擴(kuò)展字符支持除了上面講過(guò)的wcahr_t類(lèi)型定義和新增加的兩個(gè)寬字符標(biāo)準(zhǔn)庫(kù)(、)外,C99中還有其他對(duì)擴(kuò)展字符支持方面。返回x=y的宏int islessgreater(realfloating x, realfloating y)。(x*y)+zint isgreater(realfloating x, realfloating y)。y=x時(shí)返回x、yx時(shí)返回比x大的下一個(gè)double值、yx時(shí)返回比x小的下一個(gè)double值double fdim(double x, double y)。返回x除以y的余數(shù)double remquo(double x, double y, int *quo)。將x舍入到最近的整數(shù)(四舍五入)(double值)long lround(double x)。(使用浮點(diǎn)環(huán)境指定的舍入方向)將x舍入到最近的整數(shù)(double值)double rint(double x)。返回x的誤差函數(shù)double erfc(double x)。返回x*FLT_RADIXndouble scalbln(double x, long n)。返回x(以FLT_RADIX為基數(shù))的指數(shù)int值double log1p(double x)。x為正常數(shù)時(shí)返回非0值的宏int signbit(realfloating x)。返回x的浮點(diǎn)數(shù)分類(lèi)值的宏int isfinite(realfloating x)。例如:double cos (double x)。C99對(duì)數(shù)學(xué)庫(kù)也進(jìn)行了許多修改,增加了兩個(gè)數(shù)據(jù)類(lèi)型,并添加了大量新的數(shù)學(xué)函數(shù)。wint_t towupper(wint_t wc)。int iswxdigit(wint_t wc)。int iswprint(wint_t wc)。int iswtrl(wint_t wc)。size_t wcsrtombs(char * dst, const wchar_t ** src, size_t len, mbstate_t * ps)。size_t mbrlen(const char * s, size_t n, mbstate_t * ps)。size_t wcsfxtime(wchar_t *s, size_t maxsize, const wchar_t *format, const struct tmx *timeptr)。wchar_t *wmemcpy(wchar_t * s1, const wchar_t * s2, size_t n)。wchar_t *wcsstr(const wchar_t *s1, const wchar_t *s2)。size_t wcslen(const wchar_t *s)。int wcsncmp(const wchar_t *s1, const wchar_t *s2, size_t n)。wchar_t *wcscat(wchar_t * s1, const wchar_t * s2)。unsigned long int wcstoul(const wchar_t * nptr, wchar_t ** endptr, int base)。float wcstof(const wchar_t * nptr, wchar_t ** endptr)。wint_t putwc(wchar_t c, FILE *stream)。int fputws(const wchar_t * s, FILE * stream)。int wscanf(const wchar_t * format, ...)。int vswscanf
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1