草庐IT

NamespaceA

全部标签

c++ - 命名空间搜索顺序

我有两个命名空间,每个命名空间都有一个同名的函数。如果我想从其中一个命名空间调用最匹配的函数。从NamespaceA中的一个函数,如果我调用MyFunction(...),它当然会使用NamespaceA中的函数。但是,如果我添加“usingNamespaceB::MyFunction”,那么我会期望我描述的行为。然而,我实际看到的是它总是找到NamespaceB函数,即使我在NamespaceA中也​​是如此。但是,如果我还添加了一个using::NamespaceA(即使我已经在NamespaceA中),它也会按我预期的那样工作。下面是一个演示。谁能解释一下这是如何工作的?#inc