1. 前言 java
大一開始學c++,在學校的課程只是講了基本數據類型,後來接觸到java,就一直使用java了,徹底拋棄了c++。到如今,事實證實,這是錯的。拋棄c++是錯的,它是基礎,不懂就程序員的人生就不完整。ios
之後會常常寫一些我學習c++的一些筆記,一來達到鞏固之效,二來便於複習。c++
2. 預處理器程序員
在學C++以前有必要知道C++預處理器是什麼?下面看一段代碼:學習
#include <iostream> using namespace std;
和C同樣C++也使用一個預處理器,預處理器有多種(有種是把C++翻譯成C來處理的),這裏只說處理#開頭的編譯指令。預處理器在進行主編譯以前對源程序進行處理,它會在編譯源程序時自動運行。spa
上面那第一行代碼意思是要將iostream文件的內容隨源代碼文件的內容一塊兒交給編譯器處理,也就是#include <iostream>是要被iostream裏面的代碼所替代,可是原始文件沒有被修改,而是和源代碼文件組合一個新的文件,編譯的下一階段將使用它。翻譯
那麼爲何使用iostream呢?這是由於咱們的程序要和外界通訊,而iostream裏面就有這個通訊的橋樑——cin(輸入/讀)和cout(輸出/寫),因此若是咱們要和外界通訊,那麼就要使用iostream裏面的方法,這樣就要把iostream裏面的代碼包含進來,才能實現。code
3. 名稱空間ci
第二行是使用名稱空間std。順便說一下名稱空間,它的做用是讓編譯器來區分是使用哪一個產品裏的同名的東西,好比有兩個廠商的產品,假如都有一個叫a()方法,那麼在程序中使用a()方法時,編譯器就不知道該使用哪一個方法,這時廠商會給它的產品一個名稱,假如叫ZZero,這使用其a()方法時就該這樣寫:ZZero::a()。而上面的std就是這裏的ZZero。編譯器