如何知道动态或静态库中的命名空间是否已被使用?

时间:2016-11-04 05:11:22

标签: c++

在java等语言中,包名是域名,如com.foobar.mystuff。

因此,如果您拥有com.foobar,那么有人不太可能使用包名com.foobar,您可以合理地确定不会发生冲突。

但是在c ++中,您可以选择任何命名空间名称。您如何知道您链接的库是否尚未使用特定的命名空间名称?有没有办法测试它,特别是如果您无法访问源代码或文档?是否有一些指导方针可以避免这个问题?

1 个答案:

答案 0 :(得分:0)

  

是否有一些指导方针可以避免这个问题?

虽然您可能会惊讶地发现您使用的第三方库之一使用namespace作为您的应用程序,但它不应该导致太多问题(如果有的话)。

在最糟糕的情况下,您必须创建一个特定于您的应用的namespace,并在主namespace下创建嵌套的namespace