StrongStorage& operator=(const StrongStorage& other)
{
if(this!=&other)
{
if(other.isEmpty())
{
emptyCache();
}
else
{
getOtherCache().template
construct_as<value_type>(other.value());
emptyCache();
useCache1=!useCache1;
cacheInitialized=true;
}
}
return *this;
}