无呼叫接线员
No Call Operator
struct Boy {
map<string,int> girlLookUp;
string Name;
};
struct Girl {
map<string,int> boyLookUp;
string Name;
};
int findSumBoyGirl(Boy a, Girl b)
{
Boy *p = &a;
Girl *s = &b;
int sum = p->girlLookUp(s->Name) + s->boyLookUp(p->Name); "----Error----"
return sum;
}
我试图通过查找每个人的异性姓名来检索相关的性别值。当我这样做时,我收到一个错误"地图不提供呼叫运营商"。我不明白这个警告的上下文。难道不能做我正在尝试的事情吗?
你想使用map::operator[]
.这意味着你应该有
p->girlLookUp[s->Name] + s->boyLookUp[p->Name];
它认为您正在尝试使用operator()()
,它不会重载std::map
。要么使用 operator[]
,要么如果您有 C++11,at
.即,
Girl girl;
girl.boyLookUp["hi"];
girl.boyLookUp.at("hi");
相关文章:
- 呼叫运营商<<临时
- 呼叫 QSound,它们之间有延迟 Qt C++
- 什么是呼叫说明
- 为什么make_shared在不同的呼叫中分配相同的地址?
- 错误:类型"std::__1::basic_string<char>"不提供呼叫运算符
- 设备IO控制呼叫崩溃
- 根据呼叫位置进行记忆
- 成员呼叫通过接线员<<
- QSerialPort 手动 RTS 开/关未同步呼叫
- 将清除共享智能指针上的呼叫重置
- 来自 Pharo Smalltalk 的 ffi 呼叫上的分段错误
- C/C++ 在条件和阻止呼叫之间收到信号情报
- 将数据集从 R 传递到C++(使用 .呼叫)
- 无匹配函数呼叫getline()
- 通过呼叫constexpr函数来定义静态constexpr成员
- 组件X86转换为ARM功能呼叫,其中有不同数量的参数为ARM
- 呼叫家长接线员<< C++
- 无呼叫接线员
- 为什么安培和安培对于引用呼叫接线员是必要的
- 为什么我的分配接线员没有被呼叫?