未知數量輸入的解決辦法
利用whlie迴圈
// 讀入位置數量的輸入
#include using namespace std;
int main()
cout << "sum is" << sum 注意:一般windows系統的檔案結束符是ctrl + z;unix系統中是 control + d。
標頭檔案的小細節
標準庫的標頭檔案用"<>" 尖括號括起來,非標準庫的標頭檔案使用 「」 括起來
左值和右值
這個地方很深奧,我就記錄一些我的簡單的理解:
左值:出現在賦值語句中賦值符號的左邊或者右邊都可以,既可以接受其他值的賦值,也可以用於給其他的可賦值的左值進行賦值。簡單說就是「既可以賦值,也可以被賦值」。一般來說變數都是左值。
右值:只能出現在賦值語句中賦值符號的右邊。只能賦值,不能被複製。一般來說字面值都是右值。
變數初始化
這裡我指的是內建型別的變數初始化,一般分為兩種複製初始化和直接初始化
// 複製初始化和直接初始化
#include #include using namespace std;
int main()
{ int test1 = 1024; // 複製初始化
int test2(1024); // 直接初始化
cout << "test1 is :" 執行結果如下圖
注:每個內建型別的物件都要初始化。雖然這樣做並不總是必需的,但是會更加的容易和安全,除非能確定忽略初始化式不會帶來風險。
5.名字的作用域
區域性作用域的名字可以將全域性作用域的名字覆蓋,在區域性作用域中,區域性的名字優先生效,。
6.const限定符
const限定符可以修飾乙個變數,將這個變數定義為左值常量。因為常量在定義之後不能被修改,所以在定義時必須被初始化。
const物件預設認為是檔案的區域性變數。換而言之,在全域性作用域宣告的const變數時定義為該物件的檔案的區域性變數。此變數只存在於那個檔案中,不能被其他檔案訪問。
// const變數
const int test = 512;
引用這個地方我感覺挺難的,先寫一些簡單的吧
簡單地說,引用就是物件的另乙個名字。
// 引用
int test = 512;
int &reftest = test;
引用是一種復合型別,通過在變數名錢新增「&」符號來定義。復合型別是指其他型別定義的型別。在引用的情況下,每一種引用型別都「關聯到」某一其他型別。
在定義引用時,必須同時進行初始化。
const引用
const引用是指向const物件的引用。
// const引用
const int test = 512;
const int &reftest = test;
因為test的值是不能被修改的,所以reftest的賦值也是不合法的。這裡就體現了「引用是物件的另乙個名字」這個觀點。
注意:const引用時可以被初始化胃不用型別的物件或者是右值的。
// const引用 初始化
int test = 512;
const int &reftest1 = 42; //初始化為常量
const int &reftest2 = reftest + test; //初始化為右值
每日複習筆記4 28
感覺這個部分真的是重難點啊,用好的真好用,用不好是,哎,我是菜雞。有乙個順序容器和順序容器介面卡的概念,這裡先寫點關於順序容器的吧。常見的順序容器有vector list和deque三種。順序容器的定義 所有的容易都是類模板,通過模板可以編寫乙個類定義,而用於多個不同的資料型別。容器元素的初始化 表...
每日複習筆記5 3
關聯容器支援通過鍵來高效的查詢和讀取元素。有兩種基本的關聯容器型別 map和set。pair型別 表示式功能 pairp1 建立乙個空的pair物件,它的兩個元素分別是ti和t2型別的,採用值初始化。pairp1 v1,v2 建立乙個pair物件,它的兩個元素分別是ti和t2型別的,first成員初...
每日複習筆記4 25
函式的定義 函式由函式名以及一組運算元型別唯一的表示。函式體是乙個作用域 函式體是乙個語句塊,定義了函式的具體操作,形成了乙個 新的作用域。可以在函式體內定義變數,這種變數是區域性變數,變數名字只在函式內可見。函式返回型別 函式的返回型別可以是內建型別,類型別或者復合型別 例如引用或者指標 甚至是v...