簡體   English   中英

具有名稱空間的內部功能是否不好?

[英]Is it bad code to have internal functions for namespaces

假設我有一個名稱空間Util,其中包含一些基本功能。 但是在該名稱空間中,我需要一個庫的功能來完成工作,但是我不想讓頭文件知道它,因此最終我使用所需的功能創建了一個匿名的名稱空間,但又不想將其公開。 有一個更好的方法嗎 ?

舉個例子:

# Util.h  
namespace Util{  int Add();  }

# Util.cpp
namespace Util{
 namespace {
  funkyInt Add_internal(int x, int y);
  int convert(funkyInt x);
 }

 int Add(int x, int y){
  return convert(Add_internal(x,y))
 }

 funkyInt Add_internal(int x, int y){
 //DOSomething
 }
}

很好

匿名命名空間是在您的命名空間中還是在全局命名空間中,是一種品味和輕松。

  • 品味,因為代碼可能完全相同
  • 放寬,因為如果您重復使用非匿名名稱空間的其他功能,則不必添加前綴或使用名稱空間。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM