std::
當中std是命名空間,防止反覆。比
如說很多人給函式取名可能都叫f1();你使用的時候就可能造成問題。如果各人均把自己的f1()放進自己的命名空間。我們在使用的時候帶上命名空間就不會有問題。
主要是起到了資源管理的作用。以下是乙個樣例:
有兩個軟體公司a公司和b公司,他們都是用c++語言開發他們的產品。那麼,他們分別編寫了a.h和b.h兩個自己的標頭檔案,這兩個檔案中都有乙個叫func()的函式。
他們各自使用也沒什麼問題。
如果你公司也是乙個軟體公司,你如今要開發乙個軟體。必須同一時候用到a公司和b公司的標頭檔案,同一時候會呼叫他們的func()函式。這個時候問題就來了,你呼叫的func()函式,編譯器不知道應該選用a公司的還是b公司的。
為解決問題。c++採用了命名空間,這樣。你呼叫a公司的func()函式。就使用a::func()。b公司亦然。
複習一下以上知識:
(a)這簡單的程式裡僅僅有全域性和區域性空間。沒有其他的名字空間:
void main( )
(b)這個則多了乙個叫std的名字空間。std這名字也可見了:
#include
void main( )
iostream標頭檔案中有std的宣告。在編譯之前,
預處理器會用iostream裡的所有內容來取代
「#include」這個預處理器指示符。
效果是,這程式包括iostream裡的所有**。
include是包括的意思。
包括指示是在全域性空間裡。所以在指示之後的不論什麼地方,
std這個名字是可見、可訪問的。
(c)這個不包括宣告std的**卻嘗試開啟std包,
落了個跟(a)一樣狼狽的下場:
using namespace std;
void main( )
(d)這個宣告了std(曝露了std)並把std開啟,
讓裡面的名字(cin、cout、cerr、...)跟
std一樣暴露。
母包的概念與作用
有母包概念之前 有母包概念之後 現在接入sdk情況是 我們只需要先統計一下login應該有幾個引數,比如最多是a,b,c,d四個引數,然後按照規範傳入引數後,先出母包 彈乙個模擬登入 然後平台拿著去做具體的實現,去物理替換這個實現 物理替換比如 直接利用反編譯及其編譯技術去替換jar包 該丟棄的引數...
設計模式的概念與作用
1,什麼是設計模式 設計模式的作用 解決同一種型別的問題 使用設計模式可以讓 結構更加清晰 2,物件導向設計中常見的設計原則 單一職責原則 開 閉原則 開閉原則總結 面對需求,對程式的改動是通過增加新 進行的,而不是改變原來的 黎克特制替換原則 高層模組不應該依賴低層模組,它們都應該依賴抽象。抽象不...
python變數 概念與作用
變數 簡單來說 其實就是計算機記憶體中的一塊儲存空間 用來儲存cpu需要使用的資料 而這個儲存空間需要乙個名字 這個名字的統稱就叫變數 例如 a 10 a 在這裡就是乙個變數的名字.而 a 10 就是給 a 這個變數賦值 注意 賦值和命名是不一樣的 在你敲出 a 這個字母的時候 其實就已經給其命名了...