错误:
对于此代码
Assoc<keyType,valueType>& found = internalStorage.get(find(key));//returns the value of some key
抱歉,我知道这并不有趣,但是我很困惑。
任何想法是什么问题?
最佳答案
看来internalStorage.get()
按值返回了对象,并且您试图将非const
引用绑定(bind)到返回的临时对象。
解决此问题的最佳方法取决于您要尝试执行的操作(以及internalStorage
的类型):
found
,请引用const
(请参阅Does a const reference prolong the life of a temporary?)。 found
(这是internalStorage
中存储的副本),只需删除&
即可。 internalStorage
中的对象,则可能需要重构代码。 关于c++ - 错误: invalid initialization for struct in C++,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22088571/