[問題] 專案內的命名問題
C++ 有 namespace 的設定
主要的目的是用來防止命名衝突問題的發生
但今天跟個朋友討論
假設有兩個 module 它們的功能與 function 類似 (但仍有所不同)
E.g.
namespace A {
void Func1();
void Func2();
...
}
namespace B {
void Func1();
void Func2();
...
}
是否有必要將 FuncN 前面加上 A/B 這個前綴? (Func1 => AFunc1, BFunc1)
我是認為這樣有點累贅
但朋友提出了一個觀點: 假設一個人想要找用到某個 function 功能的地方
加上前綴的情況他可以很輕易的找到呼叫 A::Func1 的人 (例如: grep AFunc1 ...)
如果單單只用 Func1 而沒有前綴, 在有 using namespace 的情況下會找到很多雜訊
你必須要去看真正呼叫它的檔案才知道它是查叫哪個版本的 Func1
無形中會增加很多開發成本
他這麼一說, 好像又蠻有道理的
不知道大家對這個問題的看法如何呢?
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 59.120.41.39
※ 文章網址: http://www.ptt.cc/bbs/C_and_CPP/M.1409823392.A.0F2.html
→
09/04 17:38, , 1F
09/04 17:38, 1F
推
09/04 18:50, , 2F
09/04 18:50, 2F
→
09/04 18:50, , 3F
09/04 18:50, 3F
→
09/04 18:51, , 4F
09/04 18:51, 4F
→
09/04 18:51, , 5F
09/04 18:51, 5F
→
09/04 18:52, , 6F
09/04 18:52, 6F
推
09/04 23:01, , 7F
09/04 23:01, 7F
推
09/05 02:35, , 8F
09/05 02:35, 8F
推
09/05 02:38, , 9F
09/05 02:38, 9F
→
09/05 09:53, , 10F
09/05 09:53, 10F
→
09/05 09:56, , 11F
09/05 09:56, 11F
→
09/05 09:56, , 12F
09/05 09:56, 12F
→
09/05 09:57, , 13F
09/05 09:57, 13F
→
09/05 09:58, , 14F
09/05 09:58, 14F
推
09/05 10:05, , 15F
09/05 10:05, 15F
→
09/05 10:06, , 16F
09/05 10:06, 16F
→
09/05 11:05, , 17F
09/05 11:05, 17F
→
09/05 11:17, , 18F
09/05 11:17, 18F
→
09/05 12:15, , 19F
09/05 12:15, 19F
→
09/05 12:16, , 20F
09/05 12:16, 20F
→
09/05 12:16, , 21F
09/05 12:16, 21F
推
09/05 12:44, , 22F
09/05 12:44, 22F
→
09/05 12:45, , 23F
09/05 12:45, 23F
→
09/05 12:46, , 24F
09/05 12:46, 24F
→
09/05 12:46, , 25F
09/05 12:46, 25F
→
09/05 12:54, , 26F
09/05 12:54, 26F
推
09/05 15:51, , 27F
09/05 15:51, 27F
→
09/11 20:11, , 28F
09/11 20:11, 28F
→
09/11 20:11, , 29F
09/11 20:11, 29F