【发布时间】:2015-10-15 20:26:53
【问题描述】:
谁能给我这个错误的提示:
no viable conversion from 'std::shared_ptr<Foo>' to 'std::__1::shared_ptr<Foo> *'
QCache 看起来像这样:
QCache<int, std::shared_ptr<Foo>> cache;
我尝试像这样插入元素:
std::shared_ptr<Foo> foo;
cache.insert(23, foo);
感谢您的帮助。
【问题讨论】:
-
从错误看来,
QCache想要一个指向其存储类型的指针,而不是类型本身。 -
谢谢。它现在作为参考编译:cache.insert(23, &foo); ...但我不确定智能指针是否计入此引用。
-
坏主意。会导致崩溃。检查我的更新。
标签: c++ qt c++11 smart-pointers