const _Ty *_Myptr в std::auto_ptr<>. Почему?
От: Аноним  
Дата: 04.09.07 14:38
Оценка:
В VS80SP1 в std::auto_ptr<> указатель объявлен как const:
const _Ty *_Myptr;

При запросе указателя, он кастится к _Ty *:
_Ty *get() const _THROW0()
{ // return wrapped pointer
return ((_Ty *)_Myptr);
}

При инициализации, также принимается неконстантный указатель:
explicit auto_ptr(_Ty *_Ptr = 0) _THROW0()
: _Myptr(_Ptr)
{ // construct from object pointer
}

Вопрос: почему std::auto_ptr<> хранит именно константный указатель?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.