在java等语言中,包名是域名,如com.foobar.mystuff。
因此,如果您拥有com.foobar,那么有人不太可能使用包名com.foobar,您可以合理地确定不会发生冲突。
但是在c ++中,您可以选择任何命名空间名称。您如何知道您链接的库是否尚未使用特定的命名空间名称?有没有办法测试它,特别是如果您无法访问源代码或文档?是否有一些指导方针可以避免这个问题?
答案 0 :(得分:0)
是否有一些指导方针可以避免这个问题?
虽然您可能会惊讶地发现您使用的第三方库之一使用namespace
作为您的应用程序,但它不应该导致太多问题(如果有的话)。
在最糟糕的情况下,您必须创建一个特定于您的应用的namespace
,并在主namespace
下创建嵌套的namespace
。