繁体   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