getData()("someOtherText").toStr-6ren">
gpt4 book ai didi

c++ - 双括号?

转载 作者:行者123 更新时间:2023-12-01 22:35:47 25 4
gpt4 key购买 nike

刚刚遇到这段代码:

if(iElement->getData().contains("someText") and iElement->getData()("someOtherText").toString() == "true")

令我困惑的是这部分:

iElement->getData()("someOtherText").toString()

更准确地说,具有:()()

我在任何地方都没有见过重载者。

顺便说一句,这应该是 C++ 代码。编译并运行良好。

无法在任何地方找到任何信息,因为我不知道要搜索什么...有人可以解释一下吗?

最佳答案

 iElement->getData()("someOtherText").toString()

按以下顺序处理

  1. 调用iElement->getData()

  2. getData()返回的对象上,调用operator(),即重载的调用运算符,参数为“someOtherText”

  3. operator() 返回的对象上,调用 toString()

请注意,operator() 不一定要被重写。 getData() 也可以返回一个函数指针。

关于c++ - 双括号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60609615/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com