Тёмный

Лекция 2. Move semantics && perfect forwarding (Программирование на C++, часть 2) 

Computer Science Center
Подписаться 161 тыс.
Просмотров 15 тыс.
50% 1

compscicenter.ru/
Лекция №2 в курсе "Программирование на C++, часть 2" (весна 2019).
Преподаватель курса: Валерий Михайлович Лесин
Страница лекции на сайте CS центра: bit.ly/2NgLxOl
Все видео курса: bit.ly/2BL6j47

Опубликовано:

 

19 фев 2019

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 19   
@KIR_Engineer
@KIR_Engineer 2 года назад
Валерий очень крутой преподаватель. Вот из-за этого человека очень хочется учится CSC. Осталось пройти вступительные экзамены и решиться переехать в Санкт-Петербург)
@user-yy6ig3wm2h
@user-yy6ig3wm2h 4 года назад
Лекция - супер, Лектор(именно с большой буквы) бомба! Спасибо, очень информативно!
@rkozom
@rkozom 5 лет назад
Очень круто! Спасибо большое!
@nikitross7466
@nikitross7466 4 года назад
Лекции супер! Недавно воевал с подобным в Rapidjson без особого понимания Move семантики, у них в функциях не предвиделась передача lreferense переменных, а только rvalue. К примеру func("hello"), успешно работает, но ... const char* temp = hello; func(temp); уже не скомпилировать. Пришлось заворачивать их функции ради возможности нормально передавать данные подобным способом. template void func(T&& val){ /*...*/ }
@artempopov2298
@artempopov2298 4 года назад
прикольное название у лекции :)
@codevantage404
@codevantage404 3 месяца назад
Спасибо!
@yugenepopov2014
@yugenepopov2014 6 месяцев назад
27:25, 31:55 - не понял, что за магическая функция "swap" используется в конструкторе и операторе присваивания. Я так понял, для её использования необходима соответствующая перегрузка? Компилятор выдает следующее сообщение: "no instance of overloaded function "swap" matches the argument list". Заранее мерси за ответ.
@yaroslavkozlov569
@yaroslavkozlov569 Год назад
string("sada") - rvalue and in gcc 10. &(string("asdasda") ) is not allowed - error: taking address of rvalue [-fpermissive]
@exile2699
@exile2699 4 года назад
Такой вопрос, на 47:55 лектор говорит, что при возврате из функции будет использована move семантика. Но разве там не надо return move(str); вместо просто return str; ?
@bochkarevartem
@bochkarevartem 3 года назад
Не надо. Компилятор знает, что после "return str;" строка не может быть использована, поэтому сам все сделает в наилучшем виде.
@nagibator77779
@nagibator77779 4 года назад
Лектор просто бомба! Chad c++ developer :D. "Анастасия, к чёрту machine learning" - орал с этой фразы.
@AnatolySupakov
@AnatolySupakov 4 года назад
24:30 noexcept?
@maximorlov8208
@maximorlov8208 4 года назад
На 13:34 Валерий Лесин утверждает, что в строке 7. answer_ref()=7; ссылается на неименованную область памяти. Но это не так: функция возвращает ссылку на answ, которая является именованной областью памяти.
@lubricunt416
@lubricunt416 2 года назад
Он такого не утверждает. Говорится, что в строке 7 лишь создается неименованная область памяти и по ней присваивается значение уже для именованной области
@kosbarable
@kosbarable 5 лет назад
Я заметил, что у вас не так просто поступить на курс. А что кроме знаний даётся? Есть возможность трудоустройства после?
@ASFlasher
@ASFlasher 4 года назад
специалистов не хватает, если ты сможешь стать специалистом, то тебе не нужно будет чье то обещание тебя трудоустроить, ты будешь сам выбирать куда и на каких условиях ты пойдешь.
@AlexMikh82
@AlexMikh82 Год назад
Объяснять Лесин толково не умеет от слова совсем. Бедные студенты не зря молчат в конце лекции. Я даже имея подготовку по C++ слушая его не редко теряюсь и только иногда после третьего прогона фрагмента ДОГАДЫВАЮСЬ, что он имел в виду. Как программист он возможно хороший, но как преподаватель НЕТ. Такие сложные темы, как моve семантику и тем более слопывание ссылок и forward на серьезных иностранных курсах разжевывают очень медленно и на множестве простых примерах с детальным пояснением. Лесин же гонит это за условные 10 минут и ещё удивляется. что большинство молчит. Хорошо, если студенты уже знают эту тему. А если вообще нет?... Получается, что вся надежда в образовании не на преподавателя, а на самообразование. А преподаватель Лесин нужен чтобы просто зачитать список того, что нужно где-то как-то узнать самому.
@kawsershovon3005
@kawsershovon3005 5 лет назад
upload it in English :/
@exile2699
@exile2699 4 года назад
Don't know if you still need it or not, but the lecturer at 12:38 advised to read a series of articles about rvalue refs and move semantics. thbecker.net/articles/rvalue_references/section_01.html#section_01 It's in English, and indeed a very good read.
Далее
Лекция 3. Алгоритмы и функторы
1:09:19
Лекция 4. bind & function
43:31
Просмотров 6 тыс.
C++11 Perfect Forwarding
17:24
Просмотров 18 тыс.