這篇主要是討論C++底層的一些觀念的東西。
我覺得在學一個新東西前,一定要先了解他的來由始末,而不是只懂皮毛,初學者也別小看C++一開始的Hello World,這麼一小段程式背後還是有很多東西可以學,至少要懂它每段語法結構,和它運作的概念。
ps..這篇文章實際標題是C++的#include <iostream> 與名稱空間namespace,因為<iostream>含特殊字元,不然不能直接顯示出來,幸好上次有碰過這問題,所以這網站真的好用。
來看Hello World:
#include <iostream> using namespace std; int main(){ cout << "Hello world!" << endl; return 0; }先來講講第二行namespace這東西,這叫名稱空間,它主要傭來管理C++中命名重複的問題,設今天一個班級有兩個人都叫小王,老師點名誰知道是誰?C++不允許這情況發生,所以才出現了namespace。
using namespace std;
就是引入標準函式庫,而標準函式庫是放在std這namespace當中,如果我們要使用cout,就必須以 std::cout 的方式去呼叫,編譯器才知道要去要到std裡面去找std的cout。
但每次用都要打std::很麻煩!!
所以後面就直接using namespace std; 這樣以後就不用加std::就能使用cout
通常一個C++程式也一定會有這一行,不然後面cout 不能使用,就不能印出東西。
using有兩種用法:
- using 名稱空間::成員
- using namespace 名稱空間
至於#include <iostream>
這行也是必須的,這是讓編譯器去呼叫位於iostream當中標準資料流I/O程式庫宣告式,如果你要做數學運算,則需要使用 #include 的函式庫。
參考資料:
C++ 的命名空間
良葛格-名稱空間(Namespace)
參考資料:
C++ 的命名空間
良葛格-名稱空間(Namespace)
沒有留言:
張貼留言