C++中的std詳解


以下內容為:本人看C++視頻教程-范磊主講(2.91G)視頻學習筆記。

 與大家分享下,希望可以幫助大家學習c++!

引例:

#include<iostream>
int main()
{
    std::cout<<"我喜歡C++";//輸出一句話
    std::cout<<std::endl;//換行
    return 0;
}

 

1.std是什么?

        std::    是個名稱空間標示符,C++標准庫中的函數或者對象都是在命名空間std中定義的,所以我們要使用標准函數庫中的函數或對象都要使用std來限定。

         對象count是標准函數庫所提供的對象,而標准庫在名字空間中被指定為std,所以在使用cout的時候要加上std::。這樣編譯器就會明白我們調用的cout是名字空間std中的cout。             

2.為什么將cout放到名字空間std中?

是因為像cout這樣的對象在實際操作中或許會有好幾個,比如說你自己也可能會不小心定義了一個對象叫cout,那么這兩個cout對象就會產生沖突。

3.std都是什么時候使用?

   一般來說,std都是要調用C++標准庫時,要寫上std;

   使用非標准庫文件iostream.h,不用寫。

比如上面引例這樣改寫就不需要std:

#include<iostream.h>
int main()
{
    cout<<"我喜歡C++";//輸出一句話
    cout<<endl;//換行
    return 0;
}

當然還有一種方法:

在main函數的上面使用了兩行語句:

using std::cout;
using std::endl;

那么cout和endl前面就不需要std::

比如這樣改寫引例:

#include<iostream>
using std::cout;
using std::endl;
int main()
{
    cout<<"我喜歡C++";//輸出一句話
    cout<<endl;//換行
    return 0;
}

 

其實還有種更簡便的方法,就是直接使用using namespace std來代替using std::cout和using std::endl。

using namespace std 告訴編輯器我們將要使用空間std中的函數或者對象。

所以cout和endl前面不用注明它們是std這個名字空間中的cout和endl。

 

#include<iostream>
using namespace std;
int main()
{
    cout<<"我喜歡C++";//輸出一句話
    cout<<endl;//換行
    return 0;
}

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM