1
从代码块转换项目到Visual Studio编译器错误我遇到了这个令人费解的错误由编译器:为shared_ptr的Visual Studio 2010中
Error 4 error C2228: left of '.swap' must have class/struct/union
shared_ptr.hpp
Error 3 error C2440: '<function-style-cast>' : cannot convert from
'boost::shared_ptr<T>' to 'boost::shared_ptr<T>' shared_ptr.hpp 384
下面是升压转换器的shared_ptr.hpp有问题的代码
template<class Y>
shared_ptr & operator=(shared_ptr<Y> && r) // never throws
{
this_type(static_cast< shared_ptr<Y> && >(r)).swap(*this);
return *this;
}
我建立了一个类似但不太复杂的项目,并没有得到相同的错误。
“shared_ptr”在哪里使用? –
您能否提供代码将r值分配给某种shared_ptr的代码,并提供所涉及的类型。 – 111111
shared_ptr遍布各处,我会检查所有的作业,看看我是否犯了一个错误 –