是否可以在多图中返回对象的引用?这就是我正在尝试的:
return &this->noteList.find(key)->second;
但是我越来越Non-const lvalue reference to type 'Note' cannot bind to a temporary of type 'Note *'
想知道这是否可能,如果可以,怎么做?notelist
是多图,它Note
里面有对象。
然后就像其他人已经指出的那样,在second
没有和号 ( ) 的情况下返回。&
如果noteList
或您的方法是const
,您还必须将返回类型更改为 const ,例如:
const Note &getRef(Note note) const;
题外话:通常,您还应该将参数更改为const Note ¬e
,从而产生:
const Note &getRef(const Note ¬e) const;
或者
Note &getRef(const Note ¬e);
this->noteList.find(key)->second
已经为您提供了对多图内对象的引用(如果this->noteList
是多图)。
通过在该表达式前加上与号 ( &
),您将获得指向此类对象的指针(如果该运算符未重载)