boost::shared_ptr void->type type->void
От: Caracrist https://1pwd.org/
Дата: 07.09.09 16:27
Оценка:
Вот этот код кричит как ни пытаюсь, shared_ptr<int> в shared_ptr<void> откастилось, а вот обратно никак...

    boost::shared_ptr<int> g(new int(5));
    boost::shared_ptr<void> f(g);
    boost::shared_ptr<int> g2(f); // error C2664: 'boost::shared_ptr<T>::shared_ptr(const boost::shared_ptr<T> &)' : cannot convert parameter 1 from 'boost::shared_ptr<T>' to 'const boost::shared_ptr<T> &'    
    g = boost::shared_ptr<int>(f); // error C2440: '<function-style-cast>' : cannot convert from 'boost::shared_ptr<T>' to 'boost::shared_ptr<T>'    
    f = boost::shared_ptr<void>(g);
    g = f; // error C2440: '<function-style-cast>' : cannot convert from 'const boost::shared_ptr<T>' to 'boost::shared_ptr<T>'    c:\program files\boost\boost_1_39_0\boost\smart_ptr\shared_ptr.hpp    305

Как это сделать правильно ?
~~~~~
~lol~~
~~~ Single Password Solution
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.