• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            luqingfei@C++

            為中華之崛起而崛起!
            兼聽(tīng)則明,偏聽(tīng)則暗。

            C++入門(mén)經(jīng)典:(一)基本概念

            基本概念

            編程語(yǔ)言

            除了C++之外,還有Java、BASIC、COBOL、FORTRAN、PASCAL和C(只是因?yàn)樗荁語(yǔ)言的后續(xù)語(yǔ)言)等編程語(yǔ)言。
            所有這些稱(chēng)為高級(jí)語(yǔ)言,因?yàn)樗鼈兛梢员容^容易地表達(dá)出要計(jì)算機(jī)完成的工作,而且不針對(duì)某臺(tái)計(jì)算機(jī)。
            高級(jí)語(yǔ)言中的每個(gè)源語(yǔ)句一般映射為幾個(gè)內(nèi)部機(jī)器指令。
            低級(jí)語(yǔ)言比較接近內(nèi)部機(jī)器指令,通常稱(chēng)為匯編語(yǔ)言,一個(gè)匯編語(yǔ)言專(zhuān)門(mén)用于一種硬件設(shè)計(jì),一般一個(gè)匯編指令映射為一個(gè)內(nèi)部機(jī)器指令。

            編程語(yǔ)言簡(jiǎn)史
            FORTRAN是第一種開(kāi)發(fā)出來(lái)的高級(jí)語(yǔ)言,第一個(gè)FORTRAN編譯器是在19世紀(jì)50年代后期開(kāi)發(fā)出來(lái)的。
            已有40多年的歷史了,目前仍廣泛應(yīng)用于科學(xué)和工程計(jì)算中,但C++和其他語(yǔ)言也逐漸進(jìn)入這些領(lǐng)域。

            COBOL語(yǔ)言專(zhuān)門(mén)用于商務(wù)數(shù)據(jù)處理應(yīng)用程序,它的歷史幾乎與FORTRAN語(yǔ)言一樣長(zhǎng),目前幾乎不用COBOL編寫(xiě)代碼。

            BASIC在19世紀(jì)70年代誕生,那時(shí)已經(jīng)有了個(gè)人計(jì)算機(jī)的概念。有趣的是,Microsoft銷(xiāo)售的第一個(gè)產(chǎn)品是一個(gè)BASIC解釋程序。
            這種語(yǔ)言所固有的易用性使之很快普及,直到今天仍非常流行。

            Java是在19世紀(jì)90年代開(kāi)發(fā)的,它最初開(kāi)發(fā)為Oak語(yǔ)言,用于給小型電子設(shè)備編程。
            1995年,Oak演變?yōu)镴ava語(yǔ)言,可以在Web頁(yè)面中內(nèi)嵌代碼,從那時(shí)起直到現(xiàn)在,這已經(jīng)成為Java的主要用途。
            Java成功的主要原因是它的可移植性。Java程序可以在任何支持它的硬件平臺(tái)上運(yùn)行,而且不需要任何修改。
            Java語(yǔ)言的語(yǔ)法有許多特性,使它看起來(lái)很像C++,但有很大的區(qū)別。Java在可移植性方面比C++好,但執(zhí)行性能比不上C++。

            C在上個(gè)世紀(jì)70年代被開(kāi)發(fā)為一種高級(jí)語(yǔ)言,用于低級(jí)編程,例如實(shí)現(xiàn)操作系統(tǒng)。大多數(shù)Unix操作系統(tǒng)就是用C編寫(xiě)的。


            C++是19世紀(jì)80年代早期開(kāi)發(fā)的,是一種基于C的面向?qū)ο笳Z(yǔ)言。
            顧名思義,C++表示C的累加。
            由于C++基于C,所以這兩種語(yǔ)言有許多共同的語(yǔ)法和功能,C中所有低級(jí)編程的功能都在C++中保留下來(lái)。
            但是,C++比其前身豐富得多,用途也廣泛得多。
            C++對(duì)內(nèi)存管理功能進(jìn)行了非常大的改進(jìn),C++還具有面向?qū)ο蟮墓δ埽訡在功能上只是C++的一個(gè)很小的子集。
            C++在適用范圍、性能和功能上也是無(wú)可匹敵的。
            因此,目前大多數(shù)高性能的應(yīng)用程序和系統(tǒng)仍使用C++編寫(xiě)。


            解釋性程序和編譯性程序的執(zhí)行過(guò)程
            無(wú)論使用哪種編程語(yǔ)言,編寫(xiě)出來(lái)的程序都是由各個(gè)指令或源語(yǔ)句構(gòu)成的,它們描述了希望計(jì)算機(jī)執(zhí)行的動(dòng)作。
            這些指令或源語(yǔ)句統(tǒng)稱(chēng)為源代碼,存儲(chǔ)在磁盤(pán)的源文件中。
            任何規(guī)模的C++程序都是由若干個(gè)源文件組成的。

            編程語(yǔ)言的目的是,與計(jì)算機(jī)可以執(zhí)行的程序相比,能夠更簡(jiǎn)單地描述希望計(jì)算機(jī)執(zhí)行的動(dòng)作。
            計(jì)算機(jī)只能執(zhí)行包含機(jī)器指令(也稱(chēng)為機(jī)器代碼)的程序,不能直接執(zhí)行我們編寫(xiě)的程序。

            用前面提到的語(yǔ)言編寫(xiě)的程序基本上有兩種執(zhí)行方式,在大多數(shù)情況下,一種語(yǔ)言會(huì)選擇其中一種執(zhí)行方式。
            例如,用BASIC語(yǔ)言編寫(xiě)的程序通常是解釋性的,
            也就是說(shuō),另一個(gè)稱(chēng)為解釋器的程序會(huì)檢查BASIC源代碼,確定該程序要做什么,再讓計(jì)算機(jī)完成這些動(dòng)作。

            而C++是一種編譯語(yǔ)言。在執(zhí)行C++程序之前,必須用另一個(gè)程序(即編譯器)把它轉(zhuǎn)換為機(jī)器語(yǔ)言。
            編譯器會(huì)檢查并分析C++程序,并生成機(jī)器指令,以執(zhí)行源代碼指定的動(dòng)作。
            當(dāng)然,解釋和編譯都不像這里描述的那樣簡(jiǎn)單,但其工作原理就是這樣。

            使用解釋性語(yǔ)言,執(zhí)行過(guò)程是間接的,也就是說(shuō),每次執(zhí)行程序時(shí),都需要確定源代碼的意圖。
            因此,這種語(yǔ)言比編譯語(yǔ)言的對(duì)應(yīng)程序的執(zhí)行速度慢得多,有時(shí)要慢100倍。
            其優(yōu)點(diǎn)是在運(yùn)行之前,不必等待程序的編譯。
            使用解釋性語(yǔ)言,一旦輸入代碼,就可以立刻執(zhí)行程序。

            任何一種語(yǔ)言要么是解釋性,要么是編譯性的,這通常是由該語(yǔ)言的設(shè)計(jì)和用途來(lái)決定。
            前面說(shuō)過(guò)BASIC是一種解釋性語(yǔ)言,但這不是絕對(duì)的,目前有許多BASIC語(yǔ)言的編譯器。

            沒(méi)有所謂“最好”的語(yǔ)言,因?yàn)檫@取決于環(huán)境。
            看具體環(huán)境在意的是開(kāi)發(fā)速度,還是運(yùn)行速度,又或是移植能力等等。


            庫(kù)
            每次編寫(xiě)程序時(shí),如果總是要從頭開(kāi)始編寫(xiě),就相當(dāng)繁瑣。
            為了解決這個(gè)問(wèn)題,編程語(yǔ)言通常提供了大量預(yù)先編寫(xiě)好的代碼,以執(zhí)行標(biāo)準(zhǔn)的操作,這樣就不必重新編寫(xiě)這些代碼了。
            可用于任意程序的標(biāo)準(zhǔn)代碼都保存在一個(gè)庫(kù)中。
            編程語(yǔ)言附帶的庫(kù)跟語(yǔ)言本身一樣重要,因?yàn)閹?kù)的質(zhì)量和使用范圍對(duì)完成某一編程任務(wù)所需的時(shí)間有非常大的影響。

            C++是一種功能強(qiáng)大的語(yǔ)言

            C++的ANSI/ISO標(biāo)準(zhǔn)


            名稱(chēng)
            C++程序中的許多元素都有用來(lái)表示它們的名稱(chēng),也稱(chēng)為標(biāo)識(shí)符。
            在C++程序中,可以命名的5種元素是:
            函數(shù)、變量、類(lèi)型、標(biāo)簽、命名空間


            關(guān)鍵字
            C++中有一些保留字,稱(chēng)為關(guān)鍵字,它們?cè)贑++語(yǔ)言中有特殊的含義。


            C++語(yǔ)句和語(yǔ)句塊
            語(yǔ)句是指定程序做什么和程序所處理的數(shù)據(jù)元素的基本單元。

            把名稱(chēng)引入源文件的語(yǔ)句稱(chēng)為聲明。
            聲明只是引入名稱(chēng),指定該名稱(chēng)表示什么,它與定義不同。

            定義是分配一些內(nèi)存,來(lái)包含名稱(chēng)所指代的內(nèi)容。
            大多數(shù)聲明也是定義??????????(這句如何理解??)


            變量是內(nèi)存中一個(gè)可以存儲(chǔ)數(shù)據(jù)項(xiàng)的空間。
            下面的語(yǔ)句示例聲明了一個(gè)變量名,定義并初始化了一個(gè)變量:
            double result = 0.0;
            這個(gè)語(yǔ)句把名稱(chēng)result聲明為一個(gè)double類(lèi)型的變量(聲明),
            把內(nèi)存分配給該變量(定義),
            并設(shè)置其初始值為0.0(初始化)。

            可以把幾個(gè)語(yǔ)句放在一對(duì)花括號(hào)中,此時(shí)這些語(yǔ)句就稱(chēng)為語(yǔ)句塊。
            函數(shù)體就是一個(gè)語(yǔ)句塊。
            語(yǔ)句塊也稱(chēng)為復(fù)合語(yǔ)句,因?yàn)樵谠S多情況下,語(yǔ)句塊可以看做是一個(gè)語(yǔ)句。

            在C++中,在可以放置一個(gè)語(yǔ)句的任何地方,都可以放置一個(gè)包含在花括號(hào)對(duì)中的語(yǔ)句塊。

            語(yǔ)句塊可以放在其他語(yǔ)句塊內(nèi)部,這個(gè)概念稱(chēng)為嵌套。語(yǔ)句塊可以嵌套任意級(jí)。

            語(yǔ)句塊對(duì)用于存儲(chǔ)數(shù)據(jù)項(xiàng)的變量有重要的作用。(變量作用域?)

            代碼的顯示樣式
            注意使用制表符、空格縮進(jìn)程序語(yǔ)句,顯示出這些語(yǔ)句的邏輯;再以一致的方式使用定義程序塊的匹配花括號(hào),使塊之間的關(guān)系更清晰。

            程序結(jié)構(gòu)
            每個(gè)C++程序都由一個(gè)或多個(gè)文件組成。
            根據(jù)約定,用于存儲(chǔ)源代碼的文件有兩類(lèi):頭文件和源文件。
            頭文件可以包含描述程序所需的數(shù)據(jù)類(lèi)型的代碼,以及其他類(lèi)型的聲明。
            頭文件通常用文件擴(kuò)展名.h來(lái)區(qū)分,但這不是強(qiáng)制的。
            源文件的擴(kuò)展名是.cpp,它包含了函數(shù)聲明,即程序的可執(zhí)行代碼。這些代碼通常引用在自己的頭文件中定義的數(shù)據(jù)類(lèi)型的聲明或定義。

            編譯器在編譯代碼時(shí),需要知道這些聲明或定義,因此應(yīng)在文件的開(kāi)頭通過(guò)#include指令指定.cpp文件中需要的.h文件。
            #include指令是編譯器的一個(gè)指令,它可以把指定頭文件的內(nèi)容插入代碼,還需要為代碼需要的標(biāo)準(zhǔn)庫(kù)頭文件添加#include指令。

            編譯器提供了大量的標(biāo)準(zhǔn)頭文件,其中包含使用標(biāo)準(zhǔn)庫(kù)功能所需要的聲明。
            實(shí)際上,C++的標(biāo)準(zhǔn)頭文件名都沒(méi)有擴(kuò)展名,這就把它們與其他頭文件區(qū)分開(kāi)來(lái)。

            程序的函數(shù)和執(zhí)行
            C++程序至少包含一個(gè)函數(shù)main(),但程序一般還包含許多其他函數(shù),一些是自己編寫(xiě)的,另一些是標(biāo)準(zhǔn)庫(kù)函數(shù)。
            執(zhí)行一個(gè)函數(shù)稱(chēng)為調(diào)用函數(shù)。在調(diào)用函數(shù)時(shí),可以給它傳送數(shù)據(jù)項(xiàng)。
            在函數(shù)執(zhí)行完后,執(zhí)行控制返回到調(diào)用函數(shù)的地方。
            函數(shù)在執(zhí)行完畢時(shí),還可以把一個(gè)值返回到調(diào)用的位置上。
            返回值可以存儲(chǔ)起來(lái),以備以后使用,也可以參與某種類(lèi)型的計(jì)算,例如算術(shù)表達(dá)式的計(jì)算。


            從源文件中創(chuàng)建可執(zhí)行文件
            從C++源代碼中創(chuàng)建可以執(zhí)行的程序模塊需要兩步:
            第一步是編譯器把每個(gè).cpp文件轉(zhuǎn)換為對(duì)象文件,其中包含了與源文件內(nèi)容對(duì)應(yīng)的機(jī)器碼。
            第二步是鏈接程序把編譯器生成的對(duì)象文件合并到包含完整可執(zhí)行程序的文件中。

            編譯器把每個(gè)源文件看作一個(gè)獨(dú)立的實(shí)體,為每個(gè).cpp文件生成一個(gè)對(duì)象文件。
            然后在鏈接步驟中,把程序的對(duì)象文件和必要的庫(kù)函數(shù)組合到一個(gè)可執(zhí)行文件中。

            實(shí)際上,編譯是一個(gè)迭代的過(guò)程,編寫(xiě)源碼,編譯,發(fā)現(xiàn)錯(cuò)誤,修改源碼,再編譯,發(fā)現(xiàn)錯(cuò)誤,再修改,再編譯,……


            編譯
            源文件的編譯過(guò)程包含兩個(gè)主要階段,而它們之間的轉(zhuǎn)換是自動(dòng)的。
            第一個(gè)階段是預(yù)處理階段,在正式的編譯階段之前進(jìn)行。
            預(yù)處理階段將根據(jù)已放置在文件中的預(yù)處理指令來(lái)修改源文件的內(nèi)容。
            #include指令就是一個(gè)預(yù)處理指令,它把頭文件的內(nèi)容添加到.cpp文件中。還有其他許多預(yù)處理指令。

            這個(gè)在編譯之前修改源文件的方式提供了很大的靈活性,以適應(yīng)不同的計(jì)算機(jī)和操作系統(tǒng)環(huán)境。
            一個(gè)環(huán)境需要的代碼跟另一個(gè)環(huán)境所需的代碼可能有所不同,因?yàn)榭捎玫挠布虿僮飨到y(tǒng)是不同的。
            在許多情況下,可以把用于不同環(huán)境的代碼放在同一個(gè)文件中,再在預(yù)處理階段修改代碼,使之適應(yīng)當(dāng)前的環(huán)境。

            預(yù)處理器一般不能獨(dú)立于編譯器來(lái)執(zhí)行,調(diào)用編譯器會(huì)自動(dòng)執(zhí)行預(yù)處理過(guò)程,之后才編譯代碼。


            鏈接
            編譯器為給定源文件輸出的是機(jī)器碼,執(zhí)行這個(gè)過(guò)程需要較長(zhǎng)時(shí)間。
            在對(duì)象文件之間并沒(méi)有建立任何連接。
            對(duì)應(yīng)于某個(gè)源文件的對(duì)象文件包含在其他源文件中的定義的函數(shù)引用或其他指定項(xiàng)的引用,而這些函數(shù)或項(xiàng)仍沒(méi)有被解析。
            同樣,也沒(méi)有建立同庫(kù)函數(shù)的鏈接。
            實(shí)際上,這些函數(shù)的代碼并不是文件的一部分。
            這些工作是由鏈接程序完成的。


            鏈接程序把所有對(duì)象文件中的機(jī)器碼組合在一起,
            并解析它們之間的交叉引用。
            它還集成了對(duì)象模塊所使用的庫(kù)函數(shù)的代碼。
            這是鏈接程序的一種簡(jiǎn)化表示,因?yàn)檫@里假定在可執(zhí)行模塊中,模塊之間的所有鏈接都是靜態(tài)建立的。
            實(shí)際上有些鏈接是動(dòng)態(tài)的,即這些鏈接是在程序執(zhí)行時(shí)建立的。

            鏈接程序靜態(tài)地建立函數(shù)之間的鏈接,即在程序執(zhí)行之前建立組成程序的源文件中所包含的函數(shù)鏈接。
            動(dòng)態(tài)建立的函數(shù)之間的鏈接(在程序執(zhí)行過(guò)程中建立的鏈接)將函數(shù)編譯并鏈接起來(lái),創(chuàng)建另一種可執(zhí)行模塊——?jiǎng)討B(tài)鏈接庫(kù)或共享庫(kù)。
            動(dòng)態(tài)鏈接庫(kù)中的函數(shù)鏈接是程序調(diào)用函數(shù)時(shí)才建立的,在程序調(diào)用之前,該鏈接是不存在的。


            動(dòng)態(tài)鏈接庫(kù)優(yōu)點(diǎn):
            動(dòng)態(tài)鏈接庫(kù)中的函數(shù)可以在幾個(gè)并行執(zhí)行的程序之間共享,在執(zhí)行的多個(gè)函數(shù)需要?jiǎng)討B(tài)鏈接庫(kù)中的函數(shù)所提供的服務(wù)時(shí),這將節(jié)省同一個(gè)函數(shù)占用的內(nèi)存空間。
            動(dòng)態(tài)鏈接庫(kù)在調(diào)用其中的函數(shù)之前是不會(huì)加載到內(nèi)存中的,也就是說(shuō),如果不使用給定動(dòng)態(tài)鏈接庫(kù)中的函數(shù),該動(dòng)態(tài)鏈接庫(kù)就不會(huì)占用內(nèi)存空間。

            動(dòng)態(tài)鏈接庫(kù)是與操作系統(tǒng)緊密相關(guān)的一個(gè)系統(tǒng)功能。

            C++源字符
            編寫(xiě)C++語(yǔ)句要使用基本源字符集,這些是在C++源文件中可以顯式使用的字符集。
            包括:大小寫(xiě)字母,數(shù)字,控制字符,一些特殊字符。

            在C++中使用的字符定義并沒(méi)有說(shuō)明字符的編碼方式。編譯器將決定用于編寫(xiě)C++源代碼的字符在計(jì)算機(jī)上如何表示。


            通用字符集(Universal Character Set, UCS)。
            由UCS標(biāo)準(zhǔn)定義的字符編碼與Unicode定義的編碼相同。


            三字符序列
            就是用于表示另一個(gè)字符的三個(gè)字符序列。以前為了表示鍵盤(pán)上沒(méi)有的字符,這是必不可少的一種方法。
            編譯器會(huì)用對(duì)應(yīng)的字符替代它們,再對(duì)源代碼進(jìn)行其他處理。


            轉(zhuǎn)義序列
            通過(guò)轉(zhuǎn)義序列可以把控制字符輸入字符常量。轉(zhuǎn)義序列是指定字符的一種間接方式,通常以一個(gè)反斜杠\開(kāi)頭。

            由于反斜框表示轉(zhuǎn)義序列的開(kāi)始,因此把反斜杠字符輸入一個(gè)字符常量的唯一方式是使用兩個(gè)連續(xù)的反斜杠。

            轉(zhuǎn)義序列還提供了用鍵盤(pán)不支持的語(yǔ)言來(lái)表示字符的一種通用方式,因?yàn)榭梢允褂檬M(jìn)制(基數(shù)是16)或八進(jìn)制(基數(shù)是8)數(shù)字前置一個(gè)反斜杠來(lái)指定字符的編碼。

            由于使用了數(shù)字編碼,可以用這種方式指定任何字符。

            在C++中,十六進(jìn)制數(shù)據(jù)以x或X開(kāi)頭。

            還可以使用至多3個(gè)八進(jìn)制數(shù)字前置一個(gè)反斜杠來(lái)表示字符。例如\165。沒(méi)有x或X,就表示該編碼應(yīng)解釋為一個(gè)八進(jìn)制數(shù)字。

            cout << "\n\" Least said\n\t\tsoonest mended.\ "\n\a";
            雙引號(hào)之間的字符串稱(chēng)為字符串字面量。
            雙引號(hào)字符表示該字符串字面量的開(kāi)始和結(jié)束,它們不是字符串的一部分。

            字符串內(nèi)部的雙引號(hào)不會(huì)解釋為字符串字面量的結(jié)束,這是因?yàn)槊總€(gè)雙引號(hào)的前面都有一個(gè)反斜杠,表示這是一個(gè)轉(zhuǎn)義序列。


            語(yǔ)句中的空白
            除了在語(yǔ)句的元素之間或引號(hào)中的字符串內(nèi)用作分隔符之外,編譯器會(huì)忽略空白。
            因此可以在代碼中包含任意多個(gè)空白,使程序的可讀性更高。

            在一些編程語(yǔ)言中,語(yǔ)句的結(jié)尾是代碼行的末尾,但在C++中,語(yǔ)句的結(jié)尾用分號(hào)表示。
            因此,可以把一個(gè)語(yǔ)句分散放在好幾行代碼行上。


            程序的注釋
            C++中注釋有兩種形式:?jiǎn)涡泻投嘈小?br>單行注釋以雙斜杠開(kāi)頭(//)。
            編譯器會(huì)忽略雙斜杠后面的所有內(nèi)容。

            多行注釋以/*開(kāi)頭,以*/結(jié)尾。在/*和*/之間的所有內(nèi)容都被忽略。
            注意多行注釋不能嵌套,否則會(huì)使編譯器發(fā)出錯(cuò)誤消息。


            標(biāo)準(zhǔn)庫(kù)
            標(biāo)準(zhǔn)庫(kù)包含了大量的函數(shù)和其他支持實(shí)體,增加和擴(kuò)展了C++的基本語(yǔ)言功能。
            標(biāo)準(zhǔn)庫(kù)的內(nèi)容是C++的一部分,在語(yǔ)言的語(yǔ)法和語(yǔ)義方面跟C++相同。
            C++的標(biāo)準(zhǔn)定義了這兩者,所以每個(gè)符合該標(biāo)準(zhǔn)的編譯器都提供了完整的標(biāo)準(zhǔn)庫(kù)。

            標(biāo)準(zhǔn)庫(kù)的范圍是很特殊的。
            使用該標(biāo)準(zhǔn)庫(kù)將獲得非常多的功能,包括基本元素如基本語(yǔ)言支持、
            輸入輸出函數(shù)和異常處理(異常是在程序執(zhí)行中發(fā)生的偶然事件,常常是某種錯(cuò)誤)、
            實(shí)用函數(shù),數(shù)學(xué)例程和各種預(yù)先編寫(xiě)好并測(cè)試通過(guò)的功能。
            在程序執(zhí)行過(guò)程中可借助這些功能來(lái)存儲(chǔ)和管理數(shù)據(jù)。


            使用標(biāo)準(zhǔn)庫(kù)所需要的定義和聲明位于標(biāo)準(zhǔn)頭文件中。
            C++標(biāo)準(zhǔn)庫(kù)中的幾乎所有內(nèi)容都是在命名空間std中定義的。


            用C++編程

            過(guò)程化編程方法和面向?qū)ο缶幊谭椒?/p>


            小結(jié)
            C++程序至少包含一個(gè)main()函數(shù)。
            函數(shù)的可執(zhí)行部分由包含在一對(duì)花括號(hào)中的語(yǔ)句組成。
            一對(duì)花括號(hào)定義了一個(gè)語(yǔ)句塊。
            在C++中,語(yǔ)句用分號(hào)結(jié)束。
            關(guān)鍵字是C++中有特殊含義的一組保留字。程序中的實(shí)體不能與C++語(yǔ)言中的任何關(guān)鍵字同名。
            C++程序包含在一個(gè)或多個(gè)文件中。
            定義函數(shù)的代碼通常存儲(chǔ)在擴(kuò)展名為.cpp的文件中。
            定義數(shù)據(jù)類(lèi)型的代碼通常存儲(chǔ)在擴(kuò)展名為.h的頭文件中。
            C++標(biāo)準(zhǔn)庫(kù)提供了支持和擴(kuò)展C++語(yǔ)言的大量功能。
            C++中的輸入和輸出是利用流來(lái)執(zhí)行的,并且需要使用插入和撮運(yùn)算符,即<<和>>。
            面向?qū)ο蟮木幊谭绞叫枰x專(zhuān)門(mén)用于某程序的新數(shù)據(jù)類(lèi)型。一旦定義好需要的數(shù)據(jù)類(lèi)型,就可以根據(jù)這些新數(shù)據(jù)類(lèi)型來(lái)編寫(xiě)程序。

             

            posted on 2010-10-18 09:32 luqingfei 閱讀(815) 評(píng)論(0)  編輯 收藏 引用 所屬分類(lèi): C++基礎(chǔ)

            導(dǎo)航

            <2009年3月>
            22232425262728
            1234567
            891011121314
            15161718192021
            22232425262728
            2930311234

            統(tǒng)計(jì)

            留言簿(6)

            隨筆分類(lèi)(109)

            隨筆檔案(105)

            Blogers

            Game

            Life

            NodeJs

            Python

            Useful Webs

            大牛

            搜索

            積分與排名

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

            久久久久99精品成人片三人毛片| 欧美一区二区久久精品| 国产亚洲精品自在久久| 69久久精品无码一区二区| 日韩欧美亚洲综合久久影院d3| 国产精品久久毛片完整版| 亚洲精品乱码久久久久久中文字幕 | 精品国产热久久久福利| 久久久久一级精品亚洲国产成人综合AV区| 精品多毛少妇人妻AV免费久久| 婷婷国产天堂久久综合五月| 色偷偷88888欧美精品久久久 | 性欧美大战久久久久久久| 亚洲精品无码久久千人斩| 国产成人精品久久| 色综合久久综合中文综合网| 国产一区二区精品久久岳| 亚洲精品国精品久久99热一| 久久久久亚洲AV成人网| 99久久99这里只有免费的精品| 一本大道久久东京热无码AV| 老司机国内精品久久久久| 天堂久久天堂AV色综合| 无码精品久久一区二区三区| 热久久这里只有精品| 亚洲精品蜜桃久久久久久| 一本综合久久国产二区| 久久99国产精品成人欧美| 久久免费线看线看| 97久久精品无码一区二区天美| 超级97碰碰碰碰久久久久最新| 精品国产一区二区三区久久蜜臀| 国产精品美女久久久久| 久久99热这里只有精品国产| 思思久久99热免费精品6| 精品久久久久久国产免费了| 国产精品久久久久久搜索| 国产成年无码久久久久毛片| 久久99国产精品尤物| 国产韩国精品一区二区三区久久| 久久久久亚洲Av无码专|