天天看點

文章标題關于命名空間

版權聲明:本文為部落客原創文章,未經部落客允許不得轉載。 https://blog.csdn.net/sinat_32502811/article/details/50755991

關于命名空間

在寫我的第一個C++程式,簡單的符号輸出,第一次寫的程式如下:

```C++  
include <iostream>
int main(){
    int tries = 0;
    cout << "Are you ready for try #"
         << ++tries << "?\n";
return 0;
}
           

編譯結果出現了錯誤:

9 2 E:\計算機公開課學習\C++\example\main.cpp [Error] ‘cout’ was not declared in this scope

他說沒有聲明,我一直以為是

include

出現了問題,但是整個程式裡隻涉及

int

型變量,既不涉及布爾,也不涉及

string

型,是以隻

include <iostream>

就夠了。是以問題不出在這。後來翻閱《Essential C++》 的第一章 ,看到了需要包含命名空間,加上

using namespace std;
           

這一條語句之後,程式可以正确執行了。

關于命名空間,有如下的幾點解釋:

1 .

using

namespace

都是C++中的關鍵字。

std

是标準庫所駐之命名空間的名稱,标準庫所提供的任何事物(諸如

string class

以及

cin

cout

這兩個 iostream 類對象)都被封裝在std 中 。

2 . 命名空間是一種将庫封裝起來的方法,避免和應用程式發生命名沖突的問題。

3 . *若要在程式中使用

string class

cin

cout

這兩個

iostream

類對象,我們不僅需要包含

<string>

<iostream>

頭檔案,還得讓命名空間曝光,即使用

using namespace std;

語句。*

繼續閱讀