我有一个自由函数,foo
定义在命名空间 N 中。 的标头foo
位于全局包含搜索路径中,因此任何人都可以通过包含来调用它foo.h
。
foo
调用另一个本地的自由函数 ,foo1
它在 中定义foo.cpp
。
// foo.h
namespace N
{
void foo();
}
// foo.cpp
#include "foo.h"
namespace
{
// declare in the unnamed namespace?
void foo1()
{
// do some stuff
}
}
namespace N
{
// declare in namespace N?
void foo1()
{
// do some stuff
}
void foo()
{
foo1();
}
} // N
我应该放入foo1
未命名的命名空间还是放入namespace N
?还是没关系?
更新
我想限制 to 的foo1
范围foo.cpp
。