std::auto_ptr<T>::operator auto_ptr<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.
*this. std::auto_ptr преобразуем и присваиваем из этого шаблона. Реализация может предоставить шаблон под другим именем или реализовать эквивалентную функциональность иным способом.Параметры
(нет)
Возвращаемое значение
*this.Примечания
Конструктор и оператор копирующего присваивания из auto_ptr_ref предоставляются для возможности копирующего конструирования и присваивания std::auto_ptr из безымянных временных объектов. Поскольку их конструктор копирования и оператор копирующего присваивания принимают аргумент по неконстантной ссылке, они не могут напрямую привязываться к аргументам-значениям rvalue. Однако может быть выполнено пользовательское преобразование (1) или (2) (которое освобождает исходный auto_ptr), за которым следует вызов конструктора или оператора копирующего присваивания, принимающего auto_ptr_ref по значению. Это ранняя реализация семантики перемещения.
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/memory/auto_ptr/operator_auto_ptr