ООП на С++14, лекция 1
Вставка
- Опубліковано 5 вер 2017
- Объектно-ориентированное программирование на С++14
лекция №1
лектор: Хирьянов Тимофей Фёдорович
Прочитана 05.09.2017
Темы, рассмотренные на лекции:
- Этапы компиляции: препроцессинг, компиляция, компоновка
- Hello World на языке С++
- Арифметические операции в С++
- Операции сравнения чисел в С++
- Оператор цикла while в С++
- Оператор цикла for в С++
- Принцип локальности при объявлении переменных
- Оператор ветвления if в С++
- Тернарный оператор в С++
- Оператор ветвления switch в С++
- Оператор goto и метки в С++. Почему нельзя использовать.
00:00:00 Вступительное слово
00:02:02 О важности практических работ
00:04:03 Литература
00:07:57 Этапы компиляции
00:25:55 Раздельная компиляция
00:27:51 Разбор "Hello World"
00:39:20 Арифметические операции
00:46:43 Важное замечание про деление
00:50:15 Операции сравнения
00:51:33 Цикл while
00:56:28 Цикл while с постусловием
00:58:50 Цикл for
01:02:24 Принцип локальности переменных
01:04:00 Оператор if
01:05:43 Тернарный оператор
01:08:25 Оператор switch
01:11:29 Оператор goto
Храни Господь Тимофея Федоровича! Храни Господь Ютуб! Благодарю за лекцию!
огромное спасибо что выложили в открытый доступ лекции
Ох уж эти тяжелые вздохи оператора =)
оператор просто П...ц Сопит, крякает, зевает, постоянно что-то шуршит об камеру....просто зае...бал
@@Radar_dv_vb да он храпит даже 😁
Трындец, прогулял всю ночь сска)) отвлекает 24:00
Честно говоря было даже немного тревожно за него под конец лекции. Кто-нибудь знает, он выжил после знакомства с С++ ?😊
з.ы. А если серьезно, то огромное спасибо парню за съемку. В противном случае, мы бы не имели возожность созерцать эти занимательные лекции, а пришлось бы уже нам так стонать и кряхтеть над Страуструпом (или как там его) 😉 Люди, цените то, что имеете.
Это дыхание смотрит мне в душу.
Цикл лекций моей мечты! Спасибо Тимофей Фёдорович!
Богу слава! Не перехвалите.
Желаю упорства смотреть дальше.
В который раз убеждаюсь, что выбирая онлайн лекции нужно искать не правильную технологию\язык, а правильного преподавателя)
@@tkhirianov Аминь.
@@tkhirianov Вы правильно сказали в конце c = console, cin - console in? cout - console out.
@@tkhirianov Здравствуйте, подскажите, а если учить C++ вообще с нуля? Я никогда никаких кодов не писал и не знаю не одного языка программирования, возможно ли C++ так учить? Или смысла сейчас нет и нужно до изучения C++ изучить что-то ещё? С чего вообще начать, чтобы его понять? Я посмотрел сейчас полностью этот ролик и могу сказать, что как-то пока сложно)
Тимофей, спасибо огромное за эти лекции! Единственное, слушатели в аудитории неблагодарные, кто бубнит, оператор вообще зевает постоянно
57:03 Опер таки уснул ) Тимофей - Ваши лекции от этого не страдают. Страждущие разберутся. С уважением.
Тимофей Фёдорович, большое спасибо за ваши замечательные лекции! Да ещё и в открытом доступе! Смотрю ваши лекции запоем.
Вздохи и зевание оператора доставляют чуть меньше, чем сама лекция ))).
Прошу не ругаться на качество. Просто часть лекций я снимаю обычной любительской камерой, а снимает студент-доброволец, с которого и взятки гладки.
Слава Богу, в этом учебном году на часть лекций назначили оператора с профессиональной камерой. Будем благодарны МФТИ за это и в частности Артёму Анатольевичу Воронову.
Жаль что у нас не было такого преподавателя
По мне так вам бы попробовать курс для Степика записать, вышло бы очень круто.
Алексей Ершов Рассказывайте, рассказывайте я всегда зеваю когда мне интересно. Какойтоанекдот
Тимофей Хирьянов а как обучиться на Java script?если я начинающий?
Спасибо огромное вы даёте возможность учиться тому кому это действительно нужно.
Я человек простой, вижу в рекомендациях видео от Тимофея сразу ставлю плюс, завариваю чай и смотрю от начала до конца.
Спасибо большое за курс по С++, да 2020 и все еще актуально.
преподаватель от бога )) благодарю Тимофей всех Вам благ!!!
Лайк за ++x
в интернетах такое не объясняют
Теперь можно троллить программистов на их форумах
не получится программисты на форумах об этом знают но молчат, жулики
Спасибо за материал. Преподавательские способности достойные восхищения.
Спасибо Вам за Ваш труд, огромное.
Отличная лекция. Приступаем к следующей.
Спасибо за шикарные лекции!!!
супер, спасибо за отдельное сравнение с пайтоном, так как начинал на пайтоне, то периодически провожу аналогии, и легче понимать некоторые вещи
Тимофей, ты молодец. Спасибо. Жаль, что в моей юности мне не встретился такой преподаватель.
Тимофей, огромное вам спасибо. Вы мне объяснили саму суть многих важных вещей в программировании (смотрю ваши лекции по плюсам и питону). Мне этого очень не хватало последние два года (сейчас заканчиваю второй курс), потому что мой университет по факту является богадельней для преподавателей, а не местом для формирования личности успешного студента.
у вас профильный курс программирования? меня интересует переход на визуальное программирование и sql запросы для нашего с вами с++ , вы где-то это достали или так и остались с консолью и текстовыми файликами? что вы умеете делать спустя 5 лет
хотел написать перепоступай в МФТИ, но видимо уже поздно
Отличный преподаватель!
Доходчиво,интересно было даже смотреть ,когда все эти темы итак знаешь уже.Мне нравится си за его строгость ,нужно постоянно быть начеку и думать,что делаешь .Посему-
for (int lecture = 1;lecture
like(lecture);
люблю вас , Пайтон вообще божественно , спасибо :)
дай бог тебе здороья
Дорогой Тимофей Хирьянов, спасибо вам большое за ваши лекции , я сейчас как начал изучать программирование и ваши лекции думаю мне очень помогут , спасибо Вам большое. кстати вы не могли вы посоветовать книгу по с++?
Благодаря ардуино увлекся программированием, сейчас заинтересовался ооп, пытаюсь расширить свое понимание c++ перед переходом на stm32. И какого было мое удивление понять, что я то оказывается ооп использую, когда пишу свои библиотеки. :)
Это Мастер!
Непонятно, почему такие лекции в открытом доступе.. Они бесценны..)))
Капиталистические мышление. Учёные, в основном, на социализм, Учиться, учиться, учиться! Кто говорил? Образование доступно всем должно быть. Так было в Советское время, кроме молодое поколение не понимает.
Та не каркайте вы!) А то возмет и закроет нафиг курс, продавать на своем сайте будет.
Тимофей Хирьянов
, выложите пожалуйста лабораторные работы. Спасибо.
2020.. Ютуб как всегда вовремя ))).. Хоть институт уже окончен, но будем посмотреть )
Крутейший препод
Вот бы все преподаватели заливали лекции на youtube
У нас в Лондоне не выкладывают - жаба задушит капиталистов
У меня есть продолжение)
большое спасибо 💯❤️👏🏻👏🏻👏🏻👏🏻
Спасибо за лекции, очень приятно слушать, эмоциональный предподаватель.
С ассемблером не соглашусь, классная штука, вдруг кто из студентов будет писать на нем.
Расскажите пожалуйста как подключить библиотеку написанную на ассемблере в с++, спасибо.
Большое спасибо!
Тимофей, здравствуйте. Будут ли на тему С++ в новом учебном году? В этом году планируют выпустить новый стандарт. И качество видео в 480р не много разочаровывает. А за лекции отдельное Спасибо, очень сильно помогают.
Только начал смотреть, и досмотрел до 10-й минуты. Думаю это надо знать всем! Разжёвано, походу, конкретно.
Хотелось бы по Java увидеть таких годных лекций.
жаль, что качество 480 рублей. Знаю, что уже прошло 3+ года, но всё равно спасибо вам за то, что выкладываете материал
Из 2К19.)
57:05 Уснул наверное
Форматнулся)
сразу включил этот момент. сам чуть не упал с кровати от смеха :DDD
спасибо
Годный препод.
Главное отличие преподавателя от других -- четкая дикция. Независимо от качества видео -- все понятно.
Спасибо!
Спасибо за разжев!!!!
Самая классная книга - Лафоре Р. Объектно-ориентированное программирование в С++. Стауструп не такой сложный для восприятия. Сложный - Стивен Прата и Е.В Пышкин
Все книги крутые
Но книги шилда мне не даются
Полностью согласен. Я перечитал множество книг по разным языкам и только лафоре выбрал очень правильное начало обучения c++. Огромный минус этой книги на русском языке: ее примеры в консоли переведены в т.ч. с кодом в котором в примерах заменены англ имена на русские имена, но переводчик не учел, что функции с++ приведенные в примере не могут в кириллицу... Остальные книги намного дальше по моему личному мнению от студента новичка. Ну и начинать лафоре советую сразу с c++ на ubuntu kde, а не на ms vs. Компилятор надо трогать руками когда учишься, ide помогает специалистам, но портит новичков. Ещё в этой книге приведены не все функции доступные на Линукс из коробки без маленького бубна.
Красавчик!!!!!!ъ
Начнем!
Как жаль что я не пошел в свое время учится на ФТК ((( это так интересно ............ столько всего хотелось бы сделать
cin - Console Input
cout - Console Output
А у вас есть примеры заданий на лабораторные работы?
1:09:00 кто знает как в стандартном с++ в switch сделать диапазон значений в кейсе?
switch (x) {
case 10..100: //код
case 20, 25, 50..200, 212, 300: //код
}
Тимофей Фёдорович, вы имеете звание учителя года? Если, вдруг, нет,, то я в крайнем недоумении.
Учителя в школе, а звание "учитель года" -- это звание школьного учителя.
Перед вами не учитель, а преподаватель высшего учебного заведения.
Так что странно пребывать в недоумении по этому поводу.
1:02:00 есть ещё 4-ый цикл в c++
int i = 0;
Lable_1: if (i > 100) GOTO Lable_2;
//тело цикла
if (условие) GOTO Lable_1;//аналог CONTINUE
if (условие) GOTO Lable_2;//аналог BREAK;
//тело цикла
i++;
GOTO Lable_1;
Lable_2:
В cin и cout литера c означает console (консоль).
Оператор, а почему качество на уровне телефонов из 2005 года?
оператор просто П...ц Сопит, крякает, зевает, постоянно что-то шуршит об камеру....просто зае...бал
Стоп, народ.
Про свитч:
Если я попадаю в первый кейс, выполняю в нем команды без брейка в конце, то он же не тупо дальше пойдет выполнять, он таки проверит условия в кейсах или нет?
Пример:
switch(x)
case 0:
x = x + 2;
case 1:
x = x + 3
Если в начале х был ноль,то он попадет только в первый кейс и после свитча х буде 2
Второй пример:
x = 0;
switch(x)
case 0: x++;
case 1: x++;
case 2: x++;
default: x=2x
Тут же пройдут все 3 кейса и дефолт и в конце х будет равен 6. Я все правильно понял?
Не проверяет. Один раз прыгает на метку и потом напролом, если нет нигде break.
ого он еще и в ++ может крутяк!
Хочу заметить для молодежи ошибку в коде на 56 минуту.
Когда значение икса достигнет 10, то получите ошибку под названием бесконечный цикл (infinite loop), т.к. инкремент икса (x++) находится в самом конце тела цикла, а условие пропуска (continue) в начале тела цикла.
Доброго дня!
Немного не понял следующую конструкцию:
y=x++ это эквивалентно y=x, а y=++x это эквивалентно y=x+1?
Или выражение y=x++ эквивалентно y=x+1 или y=x, а y=++x эквивалентно y=1+x?
Т.е. все зависит в каком месте стоит знак!
y=++x;
грубо говоря, то же самое что 2 выражения:
x=x+1;
y=x;
y=x++;
грубо говоря, то же самое, что 2 выражения:
y=x;
x=x+1;
Как видите вся разница в их порядке
@@VaustXIII Спасибо за разъяснение!
Плюсы или С знать всем не обязательно, но считаю, что все должны с ним познакомиться хотя бы для того, чтобы было понимание низкоуровневых машинных операций.
Ты хотел сказать язык ассемблера?
Какому курсу института/техникума это читают? 16:52 Прикольно, что мне 15, а уже есть программки занимающие пару тысяч строк
1 курс МФИТИ
57:04 чуть со стула не упал)))
А где можно лабораторные посмотреть или увидеть?
у них на сайте, вроде
Я все понял
это 2 курс?
1:13:50 запретное заклинание)
Так мило закончилась лекция^^
Оператор зевает
оператор просто П...ц Сопит, крякает, зевает, постоянно что-то шуршит об камеру....просто зае...бал
Чувак так сладко зевнул, что я аж универские годы вспомнил
Почему не использовать просто подставку, зачем держать постоянно....
Палку от швабры хотябы
оператор просто П...ц Сопит, крякает, зевает, постоянно что-то шуршит об камеру....просто зае...бал
@@efremkos это швабра и была
Почему-то при разговоре о скорости языков программирования, все преподаватели забывают упомянуть о руках которые делают программы :D Скорость работы программы на прямую зависит от кривизны рук разработчика и уже во вторую очередь от выбранной среды разработки
В больших программах может быть. В маленьких, наверное, трудно так наговнокодить, чтобы C отработал медленнее Python. Да и в больших программах скорость C может компенсировать все огрехи, так как разница в скорости не в 2-3 раза, а в десятки раз.
57:04 Девочки, вы упали
Это continue при входе в тело цикла приводит к тому, что цикл бесконечный.
+++++++++++++++++++++++++++++++++++++++++++++++++ Тимофею ) а вот оператору 3 за работу по 5 бальной шкале!
Лекция классная! Только эти звуки зевания и сопения оператора очень сильно напрягают!😤
Пожалуйста, повторите имя первого автора, которого назвали перед Шилдтом.
Если правильно понял он говорит о Бьёрне Страуструпе
Cin это "console input" ))
Почему не начали с Си?
Там нет ООП
56:22 Зацикливание?
cin это console input?
character input.
Это console input!
Почему не проще было объявить пространство имён перед основной функцией, и не писать каждый раз std::?
у меня такой дурацкий вопрос нуба насчёт разницы "x++" и "++x", если это тоже самое что "x+=1", то можно ли аналогично написать "x=+1" ???
нет оператора =+, есть только +=.
АСМР: вздохи умирающего студента
печально, но на доске не разобрать что написано
"заголовочные файлы не являются единицей трансляции" - это странная фраза. По большему счету транслятор (после препроцессора) и не догадывается где заголовочные файлы, а где нет. Можно провести эксперимент и написать в заголовочном файле реальную функцию и убедиться, что она попадет в исполняемый код.
Мне кажется, что разумнее было бы рассказать "как надо", а потом спустя пару лекций рассказать "почему". А то очень сбивчиво получается.
В учебнике Дейтеля кажисть сначала класс в хидерфайл поместили
Все сайты обыскал, везде бесплатные курсы - один развод. А здесь вон как круто
Кто там храпит рядом с камерой???
Начало 7:57. Не благодари
Maybe translating in English subtitles
learn russian basics, its not that difficult
@@DiamondSane No, it's difficult
Оператор что ты делаешь со мной сначала потрясешь камерой потрясешь потрясешь а потом так сопишь что я сразу засыпаю
Оператор реально заколебал.
Рекомендация "не использовать switch никогда"? Почему? Выполняется быстрее конструкций if-else. Почему же не использовать?
Рекомендация "не писать на ассемблере"? Ну, такое. Программистам микроконтроллеров такое скажите. А ньюансы с переносимостью кода перенесите в HAL.
Оператор goto действительно нарушает принцип концепции структурного программирования (и Дейкстра проповедывал отказ от него), но Вы правильно заметили, что если программист знает, что делает, не вижу причин запрета данного "инструмента", особенно когда отказ от него приведёт к излишним надстройкам.
И последнее, что хотел бы заметить, хотя это и несущественное замечание, но формулировка резала слух в течении лекции). Речь идёт о наследии синтаксиса, хотя понимаю, что такая формулировка была использована для аналогии с (видимо) предыдущим курсом лекций. Это Python наследует некоторые синтаксические конструкции от С, а не наоборот.
как это не использовать switch O_o , а если у меня 150 вариантов? Херачить вложенные условия?
@Болтушка хорошо, что есть в интернете люди, которые и через год тебе покажут, какие они умные
На ускоренном просмотре укачивает
Качество изображения маловато.
Ну скинься им на камеру. Ты же бесплатно смотришь, а ещё и жалуешься.
Капиталистические мышление. Учёные, в основном, на социализм, Учиться, учиться, учиться! Кто говорил? Образование доступно всем должно быть. Так было в Советское время, кроме молодое поколение не понимает.
При всём уважении, но по этическим соображениям, подавать материал по C++ должен человек с опытом разработки на C++ от 5 лет и выше
как же оператор дышит
оператор просто П...ц Сопит, крякает, зевает, постоянно что-то шуршит об камеру....просто зае...бал
@@voronow3 дышать не запрещается. Все право имеют, понял! Другое дело что он храпит на уроке...
питон + С = С++
22:06 я не понял, Питон в 10 раз быстрее чем С++ ?
медленнее
медленнее и не в 10 раз, а часто в 20-30...
ну, не Бьерн, а всё-таки Бьёрн, это как Лёшу Лешей называть.
Нет в русском языке имени Бьёрн. Как в скандинавских языках нет имени Лёша и скажи спасибо если они хотя бы его как Леша произнесут.
Я живу в Лондоне и никто кроме русских своего акцента не стесняется, все гордятся. Французы и итальянцы говорят так, что их вообще еле понятно, однако сколько гордости. Они никогда его не изменят - это часть их культуры, их личности. Только в СНГ у людей комплекс неполноценности и ввиду этого попытки подделаться под других считая себя ущербными. Просто хочу показать с пост-продвинутой стороны наших прогрессивных, прогрессивность которых на самом деле отсталостью.
Сложно вложить то, что не вкладывается в мозги, которыюэ
32:06 что за "оператор ввода"? Первый раз такое слышу, чтобы в плюсах это так называли. На самом деле это перегруженный оператор побитового сдвига и если уж называть что то оператором ввода, то это будет сам cin и то не оператор, а поток ввода.