c 入門1(命名空間,輸入輸出,預設引數)

2021-09-28 20:37:15 字數 1255 閱讀 2099

1.命名空間的定義和使用

為什麼引入命名空間:在變數,函式,類的名稱都存在於全域性變數中,可能會導致一些衝突,引入命名空間的目的是對識別符號的名稱進行本地化,避免命名衝突(namespace關鍵字的出現就是針對這種問題)

//命名空間(每個命名空間都有自己的定義域,空間中所有的成員都侷限於該命名空間中)

//1.普通命名空間

namespace n1//n1是命名空間的名稱

}//命名空間的分段定義(同乙個工程中可以存在多個相同的命名空間名稱,編譯器最後會合成到同乙個命名空間)

namespace n1

}//2.命名空間的巢狀

namespace n2

namespace n3 }

}//命名空間的使用

//2.使用using 將命名空間中成員引入

using n1:

:b;using n1:

:add1;

//3.使用using namespace把命名空間名稱引入

using namespace n2;

intmain()

2.c++輸入和輸出

c++輸入輸出需要加iostream和std標準命名空間

using namespace std;

intmain()

不需要加任何限制輸出格式

using namespace std;

intmain()

3.預設引數

預設引數是宣告或定義函式時,為函式的引數指定乙個預設值,呼叫函式時,若沒有指定實參,則採用預設值,有引數時,採用實參的值。

//預設引數(不能在定義和宣告中同時出現,否則若給的值不同,編譯器無法確認)

//半預設必須從右到左連續賦值(void func1(int a = 10, int b)是錯誤的)

void

func1

(int a =10,

int b =22)

void

func2

(int a =10,

int b =2,

int c =33)

intmain()

注意:1.預設值必須是常量或者是全域性變數。

2.預設引數不能在函式定義和宣告中同時出現,若提供的值不同,編譯器會不知道用哪個引數

C 入門C 命名空間以及C 的輸入輸出

通過學習我們知道c語言是結構化和模組化的語言,適合處理較小規模的程式。對於複雜的問題,規模較大的程式,需要高度 的抽象和建模時,c語言則不合適。為了解決軟體危機,20世紀80年代,計算機界提出了oop object oriented programming 物件導向 思想,支援物件導向的程式語言應運...

C 基礎 命名空間及如何實現輸入輸出

眾所周知,c 作為一種物件導向的語言,當中的變數 函式 類都是大量存在的。假如這些變數 函式 類的名稱都存在於全域性作用域當中,就可能會導致很多衝突。舉個形象的例子,乙個學校有三個年級 乙個年級有三個班,很巧的是這個學校的每個年級的每個班級裡都有乙個叫小明的學生。這個學校就相當於乙個全域性作用域,當...

命名空間簡介 基本輸入輸出精解

命名空間就是為了防止名字衝突而引入 的一種機制。系統中可以定義多個命名空間,每個命名空間都有自己的名字,不可以同名 大家就可以把這個命名空間看成乙個作用域,我們在這個命名空間裡定義函式,跟你另外乙個命名空間裡定義的函式,即使同名,也互不影響。1 命名空間的定義 namespace 命名空間名 2 命...