C++ primer第五版随笔--2015年1月6日
記錄自己看這本書時的一些內容。
一、引用(reference)
引用為對象起了另外一個名字。例如:
int ival=1024;
int &relVal1=ival;//對,注意盡量不要用這方式:int& relval=ival;
int &relVal2;//報錯,引用必須被初始化
? ? ? 在定義引用時,程序把引用和它的初始值綁定(binding)在一起,而不是將初始值拷貝給引用。一旦初始化完成,引用將和它的初始值對象始終綁定在一起。因為無法令引用重新綁定到另外一個對象,因此引用必須初始化。
注意以下定義方式:
int i=0;
int &relVal=i, r=i;relval是引用,r不是
int &relVal=i, &r=i;//relval和r都是引用
?
二、指針(pointer)
今天看的指針類型主要是指針的簡單定義以及使用,不涉及很難的應用,后續補充。
?
三、引用和指針混用
int i=3;
int &r=i;
int *p=&i;
int *&r1=p;//r1是一個隊指針p的引用
因為引用不是一個對象,因此不能定義指向引用的指針。
四、const關鍵字和reference、pointer連用
1、
const int i=23;
const int &ref=i;//正確
ref=32;//錯誤
int &r1=i;//錯誤。試圖讓一個非const引用指向一個const對象會報錯
2、
int i=234;
const int &ref=i;//正確,允許這樣
const int &r2=24;//正確,允許這樣
const int &r3=ref*2;//正確,允許這樣
int &r4=ref*2;//錯誤,
3、const和pointer(常量指針和指針常量)
轉載于:https://www.cnblogs.com/LCCRNblog/p/4205775.html
總結
以上是生活随笔為你收集整理的C++ primer第五版随笔--2015年1月6日的全部內容,希望文章能夠幫你解決所遇到的問題。