C++ 中的“参数相关查找”(“Koenig 查找”)是什么?
参数相关的查找(ADL)是用于在函数调用表达式中查找不合格函数名称的协议。
这些函数调用表达式包括对重载运算符的隐式函数调用。
除了通常考虑的不合格名称查找所考虑的作用域和命名空间外,在参数的名称空间中还会查找函数名称。参数相关查找允许使用在不同命名空间中定义的运算符。
示例
namespace MyNamespace{
class A {};
void f( A &a, int i) {}
}
int main() {
MyNamespace::A a;
f( a, 0 ); //calls MyNamespace::f
}对函数调用 f 的查找取决于参数 a。参数 << 和 >> 也适用于此情况,当我们使用诸如 cout、cin、endl 等内容时,会在 std 命名空间中查找这些内容。
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP