std::auto_ptr<T>:: operator auto_ptr<Y>
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Member functions | ||||
|
auto_ptr::operator auto_ptr<Y>
auto_ptr::operator auto_ptr_ref<Y>
|
|
template
<
class
Y
>
operator auto_ptr_ref < Y > ( ) throw ( ) ; |
(1) |
(устарело в C++11)
(удалено в C++17) |
|
template
<
class
Y
>
operator auto_ptr < Y > ( ) throw ( ) ; |
(2) |
(устарело в C++11)
(удалено в C++17) |
Преобразует
*
this
в
auto_ptr
для другого типа
Y
.
Параметры
(нет)
Возвращаемое значение
Примечания
Конструктор и оператор копирующего присваивания из
auto_ptr_ref
предоставляются для возможности копирующего конструирования и присваивания
std::auto_ptr
из безымянных временных объектов. Поскольку их конструктор копирования и оператор копирующего присваивания принимают аргумент как неконстантную ссылку, они не могут напрямую связываться с rvalue-аргументами. Однако пользовательское преобразование
(1)
или
(2)
может быть выполнено (которое освобождает исходный
auto_ptr
), после чего вызывается конструктор или оператор копирующего присваивания, принимающие
auto_ptr_ref
по значению. Это ранняя реализация
move semantics
.