引用引用通常指對象別名_第1頁
引用引用通常指對象別名_第2頁
引用引用通常指對象別名_第3頁
引用引用通常指對象別名_第4頁
引用引用通常指對象別名_第5頁
已閱讀5頁,還剩35頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

參參考:C++程序本次議const普通變量

:通常指對象定義: 名=T的變量value(變量名33ref(變量的別名

#includeusingnamespaceint{intvalue=int&ref=value;int*ptr=&value;cout<<ref<<""<<<<endl;return0;}._6nt{intival=int&rivalival;//必須用本類對象ival=cout<<&rival<<setw(10)<<&ival<<cout<<ival<<setw(10)<<rival<<rival/=cout<<ival<<setw(10)<<rival<<return0;} intx=int&rx=int intintvoidint&r=

的指 數(shù)//void類型//與指針的int{doubledval=10,dgrade=90;double*pn=&dval;double&rn= cout<<&dval<<""<<&rn<<" cout<<sizeofpn<<""<<sizeof pn=rn=cout<<*pn<<""<<rn<<"" //int*p=//int&q=return}

始化的對象必須是本類型intival=int&rival= inta1,a2;int&ra=a1;int&ra=a2;所有 的操作都將轉(zhuǎn)換成對 變量的操本次議const 名類型名類型*&intint*pn=//int*&rn&n//ERROR,右值只能是指針變量,不能為表達(dá)式int*&rn=pn;_2nt{intn=cout<<"n="<<n<<(*rncout<<"n="<<n<<…return}}本次議const名名表達(dá)式constconst類型

must名表達(dá)式類型const含義:不能名表達(dá)式類型const

intx=constint&n=cout<<"x="<<x<<endl;n++;//Errorconst int&iRef10;//constint&iRef10;//constdouble&dRef12;//constdouble&dRef2iVal;//這種情況首先要對非T將隱式類型轉(zhuǎn)換結(jié)果存入T例:對于上面dRef1初始化過程double例:對于上面dRef1初始化過程doubletemp=constdouble&dRef1=. 可以作為函數(shù)重載的依constinttoint&isintint//constintto//constinttoint&isconstintival={intint&rival=returnreturn}}constconstint*pa=constint*pa=1const類型*& =常量指針must must類型*類型*const& =指針int*const&p=本次議const與函數(shù)udenamespaceint{遞{swap(intinttemp=a;a=b;inti=3,j=swap(i,return}b=}.udeudenamespace{地址{swap(intswap(&i,&jcout<<"i=<<i<<inttemp=*x=cout<<"j=<<j<<endl;}*y=}return.3 作為函數(shù)參#includeusingnamespace{inti=3,j=引voidswap(int&x,int&y{inttemp;temp=x;x=y;y=}}cout<<"i="<<i<<cout<<"j=<<j<<return.4、 作為函數(shù)參#include<iomanip>用 usingnamespace用void(constint&x,constint inttemp;temp=x=y=

int{inti=3,j=5;swap(i,j);cout<<"i="<<icout<<"j=<<jsystem" return}.形參指針變量占內(nèi)存,是地址傳遞,需要分配內(nèi)存和 voiddisplay(int{cout<<}…voiddisplay(constint{cout<<}…display(3);voiddisplay(int{cout<<}…voiddisplay(constint{cout<<}…display(3);display(3);.。 voidff(const{cout<<"constint&"<<}void{cout<<"int&"<<}函數(shù)的返回值 類類型名類型名&函數(shù)名(形參表int&int&fun(int&x,intdd=fun(a,fun(a,b7;//作為函數(shù)返回值返回變 return后面必須為變量,不 返intint&fun(int&x,inty{…return 結(jié)果不可預(yù)知!}}作為函數(shù)返回值constintknum=constintknum=constint{return}int{cout<<foo()<<endl;return}intreffunction(int{cout<< oworld!"<<}int(}int(&rfn1)(int)=int(&rfn2)(int)=int{return0;}本次議constC的舊式強(qiáng)制轉(zhuǎn)換:(類型名)(表達(dá)式(int)(int)(int)(x+類型 (表達(dá)式int(x)int(x+y)對強(qiáng)制類型轉(zhuǎn)換的 dynamic_cast后續(xù)課程中講解對強(qiáng)制類型轉(zhuǎn)換的用于去除注意:只針對指針 DEMOconstconstintival=intivallconst_cast<int>(ival);無法轉(zhuǎn)換int*p_ival=const_cast<int*>(&ival);constint*q_ival=const_cast<constvoidvoidfun(constchar*src{char*p=//char*p=while(*p!='\0'{*p=}}int{charbuf[]= ocout<<bufcout<<buf<<return}}對強(qiáng)制類型轉(zhuǎn)換的用于內(nèi)置數(shù)據(jù)類型之間的轉(zhuǎn)換,如:int轉(zhuǎn)換成(參與轉(zhuǎn)換的兩個(gè)指針之中至少一個(gè)是void把任何類型的表達(dá)式轉(zhuǎn)換成void用于類層次結(jié)構(gòu)中基類和子類之間指針 的轉(zhuǎn)具有繼承關(guān)系的類

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論