我一直在听C++中的仿函数.有人可以给我一个关于它们是什么的概述以及在什么情况下它们会有用吗?
在Boost Signals库中,它们重载了()运算符.
这是C++中的约定吗?对于回调等?
我在同事的代码中看到了这一点(恰好是Boost的忠实粉丝).在那里的所有Boost善良中,这只会让我感到困惑.
有关这种超载原因的任何见解?
c++ boost operator-overloading functor function-call-operator
刚遇到这么一段代码:
if(iElement->getData().contains("someText") and iElement->getData()("someOtherText").toString() == "true")
Run Code Online (Sandbox Code Playgroud)
令我难以置信的是这部分:
iElement->getData()("someOtherText").toString()
Run Code Online (Sandbox Code Playgroud)
更准确地说: ()()
我在任何地方都没有看到过重载。
顺便说一下,这应该是 C++ 代码。编译并运行良好。
无法在任何地方找到任何信息,因为我什至不知道要搜索什么......有人可以解释一下吗?