什麼是名稱空間?
什麼是名稱空間?
為什麼要寫using namespace std;這句話呢
這是C++新引入的一個機制,主要是為了解決多個模組間命名衝突的問題,就像現實生活中兩個人重名一個道理。C++把相同的名字都放到不同的空間裡,來防止名字的衝突
例如標準C++庫提供的物件都存放在std這個標準名字空中,比如cin、cout、endl,所以我們會看到在C++程式中都會有using namespace std;這句話了
如程式:
include
using namespace std; int main() { cout<<"Nice to meet you!"<
第二種:
用域限定符::來逐個制定,剛才的程式碼還可以寫成:
include
int main() { std::cout<<"Nice to meet you!"<
第三種:用using和域限定符一起制定用哪些名字,如程式碼:
include
using std::cout; using std::endl; int main() { cout<<"Nice to meet you!"<
以上三種,大家用哪種都可以,為今後統一方便,我們教程中統一第一種寫法。
值得一提的是,其實早期的C++標準是沒有名稱空間這個概念的,標頭檔案包含也和C一樣,都是帶.h字尾的。只是新標準中使用不帶.h的標頭檔案包含時,必須要宣告名稱空間,並且包含標頭檔案在前,宣告使用的名字空間在後。
相關文章
- Python中名稱空間是什麼?名稱空間生命週期是多久?Python
- 你真的知道什麼是 Python「名稱空間」嗎?Python
- 名稱空間
- facebook分享遊戲連結新增應用名稱空間是什麼遊戲
- facebook分享遊戲連結新增應用名稱空間是什麼?遊戲
- vuex名稱空間Vue
- PHP 名稱空間PHP
- 20200109 - 名稱空間
- PHP名稱空間PHP
- python名稱空間Python
- Python名稱空間包Python
- 11. 名稱空間
- ts---名稱空間
- C++名稱空間C++
- 15-名稱空間
- k8s中名稱空間的作用是什麼K8S
- 使用p名稱空間和c名稱空間的XML快捷方式XML
- 3-1 名稱空間
- PHP 核心特性 - 名稱空間PHP
- Kubernetes 名稱空間入門
- ros節點名稱空間ROS
- c++系列:匿名名稱空間C++
- Python作用域和名稱空間Python
- spring框架中的名稱空間Spring框架
- System.Security.Cryptography 名稱空間
- Python中名稱空間包簡介Python
- 內聯和巢狀名稱空間巢狀
- 瞭解下C# 名稱空間(Namespace)C#namespace
- php名稱空間的呼叫順序PHP
- PHP 物件導向 (三)名稱空間PHP物件
- OpenCV 名稱空間學習筆記OpenCV筆記
- C++系列: 巢狀名稱空間C++巢狀
- PHP 獲取不帶名稱空間的類名PHP
- yaml檔案中在哪加名稱空間?YAML
- 深入講解Python名稱空間規則!Python
- Kubernetes 的層級名稱空間介紹
- Python3 名稱空間和作用域Python
- 自研 PHP 框架 1.1_名稱空間PHP框架