C++中std的使用及說(shuō)明
C++中std的使用
std::是個(gè)名稱空間標(biāo)識(shí)符,C++標(biāo)準(zhǔn)庫(kù)中的函數(shù)或者對(duì)象都是在命名空間std中定義的,所以我們要使用標(biāo)準(zhǔn)庫(kù)中的函數(shù)或者對(duì)象都要用std來(lái)限定。
至于為什么將cout放到名字空間std中,是因?yàn)橄骳out這樣的對(duì)象在實(shí)際操作中或許會(huì)有好多個(gè),比如說(shuō)你自己也可能會(huì)不小心定義一個(gè)對(duì)象叫cout,那么這兩個(gè)cout對(duì)象就會(huì)產(chǎn)生沖突。
std都是在什么時(shí)候使用?
一般來(lái)說(shuō),std都是要調(diào)用C++標(biāo)準(zhǔn)庫(kù)時(shí)使用。比如:使用標(biāo)準(zhǔn)庫(kù)文件iostream時(shí),要寫上std;使用非標(biāo)準(zhǔn)庫(kù)文件iostream.h,不用寫。如圖引入非標(biāo)準(zhǔn)庫(kù)iostream.h時(shí),省去了std::

當(dāng)然使用標(biāo)準(zhǔn)庫(kù)時(shí),也是可以省略的,不過(guò)需要進(jìn)行處理
分別將cout和endl釋放出來(lái)

將命名空間釋放出來(lái)
注:using namespace std 告訴編輯器我們將要使用名字空間std中的函數(shù)或者對(duì)象,所以cout和endl前面不用注明他們是std這個(gè)名字空間中的cout和endl

搞懂C++中的std::是什么
C++中的std::是什么?
std:: 是個(gè)名稱空間標(biāo)示符,C++標(biāo)準(zhǔn)庫(kù)中的函數(shù)或者對(duì)象都是在命名空間std中定義的,所以我們要使用標(biāo)準(zhǔn)函數(shù)庫(kù)中的函數(shù)或?qū)ο蠖家褂胹td來(lái)限定。
標(biāo)準(zhǔn)庫(kù)在名字空間中被指定為std,所以在使用標(biāo)準(zhǔn)庫(kù)中的函數(shù)或者對(duì)象的時(shí)候要加上std::,這樣編譯器就會(huì)明白我們調(diào)用的函數(shù)或者對(duì)象是名字空間std中的。
什么是C++標(biāo)準(zhǔn)庫(kù)呢?
C++標(biāo)準(zhǔn)庫(kù),C++ Standard Library,是類庫(kù)和函數(shù)的集合,其使用核心語(yǔ)言寫成,由c++標(biāo)準(zhǔn)委員會(huì)制定,并不斷維護(hù)更新。
C++強(qiáng)大的功能來(lái)源于其豐富的類庫(kù)及庫(kù)函數(shù)資源。在C++開發(fā)中,要盡可能地利用標(biāo)準(zhǔn)庫(kù)完成,這樣可以降低成本,提高編程效率,保證程序質(zhì)量,又能保持編程風(fēng)格一致性。
C++標(biāo)準(zhǔn)庫(kù)又分為標(biāo)準(zhǔn)函數(shù)庫(kù)和面向?qū)ο箢悗?kù)。
標(biāo)準(zhǔn)函數(shù)庫(kù)包括:輸入/輸出 I/O、字符串和字符處理、數(shù)學(xué)、時(shí)間、日期和本地化、動(dòng)態(tài)分配、其他、寬字符函數(shù)。
面向?qū)ο箢悗?kù)包括:標(biāo)準(zhǔn)的 C++ I/O 類、String 類、數(shù)值類、STL 容器類、STL 算法、STL 函數(shù)對(duì)象、STL 迭代器、STL 分配器、本地化庫(kù)、異常處理類、雜項(xiàng)支持庫(kù)。
在什么時(shí)候要用到std::,什么時(shí)候不需要用呢?
一般來(lái)說(shuō),要調(diào)用C++標(biāo)準(zhǔn)庫(kù)時(shí),要寫上std::。
如果使用非標(biāo)準(zhǔn)庫(kù)文件iostream.h,不用寫。
如:#include<iostream.h>
#include<iostream.h>
int main()
{
? ? cout<<"hello world"; ? //而不是std::cout<<"hello world";
? ? cout<<endl; ? //而不是std::cout<<std::endl;
? ? return 0;
}一種更簡(jiǎn)單的方法,不需要寫std::
直接使用using namespace std來(lái)代替std::。
using namespace std 告訴編輯器我們將要使用空間std中的函數(shù)或者對(duì)象。
如:using namespace std;
#include<iostream>
using namespace std;
int main()
{
? ? cout<<"hello world";
? ? cout<<endl;
? ? return 0;
}總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
關(guān)于C語(yǔ)言中數(shù)據(jù)在內(nèi)存中的存儲(chǔ)詳解
這篇文章主要給大家介紹了關(guān)于C語(yǔ)言中數(shù)據(jù)在內(nèi)存中的存儲(chǔ)的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-04-04
C語(yǔ)言簡(jiǎn)明清晰講解結(jié)構(gòu)體
C語(yǔ)言結(jié)構(gòu)體(Struct)從本質(zhì)上講是一種自定義的數(shù)據(jù)類型,只不過(guò)這種數(shù)據(jù)類型比較復(fù)雜,是由 int、char、float 等基本類型組成的。你可以認(rèn)為結(jié)構(gòu)體是一種聚合類型2022-05-05
C++ 項(xiàng)目引入lib和dll的區(qū)別與使用實(shí)戰(zhàn)
靜態(tài)鏈接庫(kù)與動(dòng)態(tài)鏈接庫(kù)都是共享代碼的方式,本文主要介紹了C++項(xiàng)目引入lib和dll的區(qū)別與使用實(shí)戰(zhàn),具有一定的參考價(jià)值,感興趣的可以了解一下2024-02-02

