и посмотреть медиа
Punto de entrada - conceptos básicos de programación
и посмотреть медиа
Conocimientos básicos sobre los fundamentos de programación para principiantes.
Conocimientos básicos sobre los fundamentos de programación para principiantes.
Curso de conceptos fundamentales: algoritmos, estructuras de datos, lenguajes de programación. Ideal para principiantes sin experiencia.
Перемещение в C++ не отменяет уничтожение исходного объекта Когда std::vector создаёт новый элемент из std::move(s), исходный s остаётся в своей области видимости. При выходе из неё C++ всё равно вызывает деструктор: специальную функцию, которая срабатывает при уничтожении объекта. Если внутри есть системный вызов или удаление записи из общего реестра, даже перемещённый объект может выполнить лишнюю работу. ManualDrop отделяет время жизни объекта от памяти, в которой он лежит. Обёртка убирает автоматический вызов деструктора и позволяет вызвать его явно либо переместить значение в другой объект с автоматическим уничтожением. В разборе с исходным кодом повторите пример со std::vector сначала без ManualDrop, затем с ним. Сравните вывод конструкторов и деструкторов. Используйте приём только там, где значение гарантированно будет перемещено из своей области видимости.
Открыть канал и посмотреть медиаSolo los usuarios registrados pueden compartir su opinión.
¡Sé el primero en compartir tu experiencia con este recurso!