數(shù)據(jù)結(jié)構(gòu)課件:C++內(nèi)容總結(jié)_第1頁
數(shù)據(jù)結(jié)構(gòu)課件:C++內(nèi)容總結(jié)_第2頁
數(shù)據(jù)結(jié)構(gòu)課件:C++內(nèi)容總結(jié)_第3頁
數(shù)據(jù)結(jié)構(gòu)課件:C++內(nèi)容總結(jié)_第4頁
數(shù)據(jù)結(jié)構(gòu)課件:C++內(nèi)容總結(jié)_第5頁
已閱讀5頁,還剩12頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

C++內(nèi)容總結(jié)1.輸入輸出語句cout<<代替printf()cin>>代替scanf()例:scanf(“%d%d”,&x,&y);cin>>x>>y;(x,y事先定義為整型)scanf(“%7.2f%d%c”,&x,&y,&z);

cin>>x>>y>>z;使用cin輸入時,空格、Tab鍵、回車鍵都被當(dāng)作分隔符或結(jié)束符,所以無法接收上述按鍵。cin.getline()接收一個字符串,可接收空格。cin.getline(字符指針,字符個數(shù)N,結(jié)束符);//一次讀取多個字符(包括空格,直到讀滿N-1個,或者遇到指定的結(jié)束符為止,默認(rèn)以'\n'結(jié)束。)例如:chara[20];cin.getline(a,20);cin.getline(a,20,'\n');printf(“%d,%d,%d,%d”,i,j,m,n);cout<<i<<“,”<<j<<“,”<<m<<“,”<<n;//引號內(nèi)部分原封不動輸出到屏幕printf(“x=%dy=%d\n”,x,y);cout<<“x=”<<x<<“”<<“y=”<<y<<endl;//endl相當(dāng)于“\n”,表示回車換行C++優(yōu)點(diǎn):用cout和cin后,不需要指定格式。2.const常量修飾符用const修飾過的變量,在程序執(zhí)行期間其值不會被改變,所以可代替常量宏定義。例:constintMaxSize=50;

相當(dāng)于

#defineMaxSize50const常量的優(yōu)點(diǎn):宏定義無類型,只進(jìn)行簡單替換。而const常量提供類型檢查。3.引用變量&在本書中,“引用”僅僅是用在函數(shù)定義的形參中。它表示:在函數(shù)調(diào)用時,系統(tǒng)會自動取實(shí)參的地址傳給函數(shù),函數(shù)實(shí)際操作的就是實(shí)參本身,是傳址調(diào)用。4.動態(tài)內(nèi)存分配和釋放用關(guān)鍵字new和delete動態(tài)分配內(nèi)存和釋放內(nèi)存。new和delete類似于C語言中的函數(shù)malloc()和free(),功能類似但又優(yōu)于這兩個函數(shù)。動態(tài)申請變量空間語法:p=newtype;//申請內(nèi)存空間,返回指向該內(nèi)

指針

類型名存空間的地址。若分配失敗,則返回空指針。例:p=newint;

說明:為整型變量分配了一塊內(nèi)存空間。指針p指向該空間,即p存放的是這塊空間的首地址。比較:inta;p=&a;

但這是靜態(tài)分配內(nèi)存空間,a占用的空間不能隨意釋放。

p=newLNode;

說明:為LNode類型的變量分配一塊空間,也就是動態(tài)生成一個LNode類型的結(jié)點(diǎn)。指針p指向該結(jié)點(diǎn)。

釋放空間語法:deletep;動態(tài)申請和釋放數(shù)組空間申請數(shù)組空間:

p=newtype[size];//p是指向數(shù)組的指針

//size為數(shù)組元素的個數(shù)例:p=newint[3];

釋放數(shù)組空間:delete[]p;5.函數(shù)重載和運(yùn)算符重載函數(shù)重載是指:在同一程序中可以定義多個同名函數(shù),它們通常具有相似的功能。但這些同名函數(shù)的參數(shù)類型、參數(shù)個數(shù)、返回值類型、函數(shù)功能可以完全不同。編譯系統(tǒng)將根據(jù)函數(shù)參數(shù)的類型和個數(shù)來判斷調(diào)用哪一個函數(shù)。#include<iostream.h>intabs(intx)

//形參為整型{returnx>0?x:-x;}doubleabs(doublex)

//形參為雙精度型{returnx>0?x:-x;}voidmain(){intx1=4;doublex2=5.5;cout<<"|x1|="<<abs(x1)<<endl;//調(diào)用函數(shù)intabs(intx)cout<<"|x2|="<<abs(x2)<<endl;//調(diào)用doubleabs(doublex)}5.函數(shù)重載和運(yùn)算符重載運(yùn)算符重載:對已有的運(yùn)算符進(jìn)行重新定義,使之適用于新的數(shù)據(jù)類型,進(jìn)行類似運(yùn)算。運(yùn)算符重載的實(shí)質(zhì)就是函數(shù)重載。在本書中,只有當(dāng)數(shù)據(jù)元素為struct類型時才用到運(yùn)算符重載。運(yùn)算符重載規(guī)則

不可定義新的運(yùn)算符:C++的運(yùn)算符除了少數(shù)幾個之外,全部可以重載,而且只能重載已有的運(yùn)算符。重載之后運(yùn)算符的優(yōu)先級和結(jié)合性都不會改變,并且要保持原運(yùn)算符的語法結(jié)構(gòu)。不能改變運(yùn)算符原有的功能。運(yùn)算符重載函數(shù)的定義

運(yùn)算符重載函數(shù)的一般定義格式如下:若運(yùn)算符為一元運(yùn)算符時,<參數(shù)表>有一個形參;若為二元運(yùn)算符,則有兩個形參。<返回值類型>operator<運(yùn)算符>(<參數(shù)表>){<函數(shù)體>;}運(yùn)算符重載函數(shù)的調(diào)用

采用一般使用運(yùn)算符的格式:1)一元運(yùn)算符:#objoperator#(obj)

2)二元運(yùn)算符:

obj1#obj2operator#(obj1,obj2)6.其他可以把變量的類型說明靠近它使用的地方例:for(inti=0;i<5;i++)//在使用i的地方定義它為整型

voidInitList(List&L)//形參的類型說明放在形參表中函數(shù)定義中

1)

溫馨提示

  • 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

提交評論