«Functional (C++)»–ի խմբագրումների տարբերություն

Content deleted Content added
No edit summary
Տող 195.
 
== Փաթեթների հղումներ ==
<tt><functional> վերնագրային ֆայլում</tt> կա օգնող <tt>std::reference_wrapper</tt> դաս, որը ինքստինքյան տալիս է օբյեկտի հղում կամ ֆունկցիայի հղում, որը փոխանցվել էր նրան կաղապարով։ <tt>reference_wrapper ֆունկցիան իմաստը կայնում է նրանում</tt>, որ պահպանել հղումները, որը փոխանցվել էր <tt>T տեսակի կաղապներում և արտածել այն երբ դիմում ենք</tt> <tt>operator T& ()-ին։</tt>
В заголовочном файле <tt><functional></tt> определен небольшой вспомогательный класс <tt>std::reference_wrapper</tt>, который оборачивает в себе [[Ссылка (C++)|ссылку]] на объект, или ссылку на функцию, переданную ему в шаблоне. Он может быть полезен для передачи ссылок шаблонам функций (к примеру, в [[Algorithm (C++)|алгоритмах]]), которые обычно делают [[Конструктор копирования|копии объектов]] при передаче по значению. Всё, что делает <tt>reference_wrapper</tt>, это хранение ссылки на переданный в шаблоне тип <tt>T</tt>, и выдачу её при обращении <tt>operator T& ()</tt>.
 
ВпервыеԱռաջին шаблонный классանգամ <tt>reference_wrapper</tt> появилсяկաղապարային вդասը библиотекеհայտնվել Refէ вRef версииգրադարանում (Boost 1.25.0 տարբերակի մեջ)<ref name="BoostLibs" />.: Сորոշ некоторымиբերելավումներից доработкамиհետո онնա былավելացվել включен вէ С++11. մեջ։
 
Для создания объектов <tt>reference_wrapper օբյեկտներ ստեղծելու համար տրված են օգնական</tt> предоставлены вспомогательные функции <tt>ref</tt> и <tt>cref ֆունկցիաներ</tt>, определённыеորոված են следующимհետևյալ образом:կերպ՝
<source lang="cpp">
template <class T> reference_wrapper<T> ref(T& t) noexcept;