我用c ++写了一个名为'Sync'的类。 然后,我创建了一个包含与syncID num相关联的Sync对象的地图,如下所示:
map<int, Sync*> _syncList;
在我的一个方法中,我正在尝试根据给定的syncID号在地图中搜索现有的Sync对象,如下所示:
Sync* currS = *(_syncList.find(sync_id))->second;
我认为这会很整洁,但编译器抱怨这个:
error: cannot convert ‘Sync’ to ‘Sync*’ in initialization
我能做些什么来妥善解决这个问题?
答案 0 :(得分:3)
两件事:
Sync* currS = _syncList.find(sync_id)->second;
find()
实际上找到了一个元素(否则您需要检查find()
的{{1}}的返回值。)