Re: [問題] 新手觀念問題 可以幫我區別嗎?
你說的大概可以吧. 我再做點補充
首先你要知道 C++ 有一樣叫 namespace 的 feature.
你看到的 std 就是一個特別的 namespace, 用來放
standard lib (應該是吧?) 的 class/function etc
要用在 某 namespace 下的某 class/function etc,
就要用 ns_name::foo 之類的寫法.
但每次那樣寫總會有時會很麻煩, 為了方便, 你可以
先用 using ns_name::foo
那麼你以後要用 foo 的時條, 就可以直接打 foo 就行
了. 再進一步, 要是某 namespace 所有東西你都想
能夠直接用到, 就用 using namespace ns_name;
不過再加一點補充, 我印象中, VC6 好像忘了用了哪
一個 runtime 還是什麼 (iostream 嗎? 太久了...)
, 會用了舊款的 standard lib, 這個裡面的東西是沒
有放在 std namespace 底下的, 這也可能是你看到的怪
現像之一
再補充第二點, 用 using 的話, 謹記在 source file
用就好, 千萬不要在 header 用, header 中乖乖寫
全寫, 不然容易造成 namespace pollution
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 202.155.236.82
推
07/10 16:07, , 1F
07/10 16:07, 1F
→
07/10 18:44, , 2F
07/10 18:44, 2F
討論串 (同標題文章)
完整討論串 (本文為第 2 之 2 篇):
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章