一、型別分類
型別分類:
基礎型別
自定義型別
二、命名空間
1.命名空間相當於全域性域,用{}括起來乙個檔案,用namespace給這個檔案命名。
std是c++庫里的檔案,它的使用有兩種方法,一種是using namespace std,一種是std::cout<
2.c語言中1個域無法對乙個變數進行多次定義,會造成重定義的問題。
如下所示就由於a重定義從而導致無法編譯:
c++通過命名空間解決此問題,通過給不同的域定義不同的名字從而對域進行隔離,解決命名衝突的問題:
3.總結:using namespace std命名空間的優缺點
優點:解決了c語言命名空間衝突的問題(乙個域內無法對變數進行多次定義)
缺點:直接呼叫的庫里的函式,如果定義的與庫里的重複,則無法進行編譯
三、函式過載
c語言不支援兩個函式的函式名相同,而c++支援兩個函式的函式名相同,即過載。
1.定義:函式名相同,引數不同(引數的個數或型別不同)
引數不同是指引數的個數或者型別不同(其中若引數有多個個數和型別,只要順序不同也可構成過載)
2.c++是怎樣支援過載的?
c++遵循函式名修飾規則,c++的命名由函式名以及引數型別等構成,既是函式名相同,但是引數不同,從而函式引數的首字母不同,從而函式名不同,所以c++支援過載
四、預設引數
1.分類:
預設引數分為全預設與半預設,全預設即函式的引數都給賦值,半預設即函式的引數可以部分不賦值
2.半預設引數只能從左向右預設,以下的定義是不可以的,預設實參不在形參列表的結尾
intf3(
intx1
=5,intx2)
C 知識點 命名空間 預設引數 過載
1.什麼是c 2.c 與c語言的差異 3.c 中的命名空間例 namespace s1namespace s2int main 4.預設引數int add1 int x,int y,int z 沒有預設值 int add2 int x,int y,int z 3 半預設 int add3 int x...
c 命名空間 函式過載 預設引數
在c c 中,變數 函式和類都是大量存在的,這些變數 函式和類的名稱將都存在於全域性作用 域中,可能會導致很多衝突。使用命名空間的目的是對識別符號的名稱進行本地化,以 避免命名衝突或名字汙染,namespace 關鍵字的出現就是針對這種問題的。1.1 命名空間的定義 namespace n1 1.1...
C 命名空間 預設引數 函式過載
使用命名空間是要對識別符號的名稱進行本地初始化,避免命名衝突。定義命名空間需要用到namespace關鍵字,後跟命名空間的名字,在 內為命名空間的成員 普通的命名空間 namespace n1 巢狀的命名空間 namespace n2 namespace n3 同一工程中允許存在多個相同名稱的明明空...