- Видео 127
- Просмотров 12 619
Вова Шараде
Добавлен 5 мар 2022
Изучение языка С++ в коротких примерах.
"И огромного слона можно съесть, если разделить его на маленькие кусочки"
"И огромного слона можно съесть, если разделить его на маленькие кусочки"
Уроки С++ / Урок #125 / EnCapsulation / Инкапсуляция - первый столп ООП
1. Что такое инкапсуляция?
2. Для чего предназначены set и get интерфейсы?
3. Преимущества инкапсулированных классов?
#C++ #encapsulation #OOP
#урокиснуля #счегоначатьпрограммирование
#лаконично
#qt
#vovasharade #вовашараде
2. Для чего предназначены set и get интерфейсы?
3. Преимущества инкапсулированных классов?
#C++ #encapsulation #OOP
#урокиснуля #счегоначатьпрограммирование
#лаконично
#qt
#vovasharade #вовашараде
Просмотров: 69
Видео
Уроки С++ / Урок #124 / class-ные спецификаторы доступа / private / public / protected
Просмотров 242 месяца назад
1. Какой доступ по умолчанию в структуре ? 2. Какой доступ по умолчанию в классе? 3. Для чего нужны интерфейсы в классе? #C #private #public #protected #class #урокиснуля #счегоначатьпрограммирование #лаконично #qt #vovasharade #вовашараде
Уроки С++ / Урок #123 / class / Знакомьтесь!
Просмотров 552 месяца назад
1. На что похож class ? 2. Как правильно называются переменные класса? 3. Что в себе таит класс ? #C #class #OOP #ООП #урокиснуля #счегоначатьпрограммирование #лаконично #qt #vovasharade #вовашараде
Уроки С++ / Урок #122 / Aloha alloca() или выделяем память в стеке
Просмотров 1333 месяца назад
1. Достоинства alloca() перед malloc()? 2. Где предел у alloca()? 3. Как можно использовать alloca()? 4. Где я допустил ошибку с работой динамической памяти? Ссылка на GNU bit.ly/3UW1Ogy #C #alloca #sbrk #sbrk #malloc #heap #урокиснуля #счегоначатьпрограммирование #лаконично #qt #vovasharade #вовашараде
Уроки С++ / Урок #121 / free() / Чистим или освобождаем?
Просмотров 1314 месяца назад
1. Что делает вызов free()? 2. Как влияет free( ) на кучу? 3. Можно ли повторно использовать адреса после free()? #C #free #sbrk #brk #malloc #heap #урокиснуля #счегоначатьпрограммирование #лаконично #qt #vovasharade #вовашараде
Уроки С++ / Урок #120 / malloc() / sbrk() / brk() или куда растет куча...
Просмотров 684 месяца назад
1. Куда растет куча (heap) ? 2. Для чего нам sbrk(0)? 3. Что такое program break? 4. Как пользоваться калькулятором windows =) ?\ 5. Из чего состоит malloc ? #C #sbrk #brk #malloc #heap #урокиснуля #счегоначатьпрограммирование #лаконично #qt #vovasharade #вовашараде
Уроки С++ / Урок #119 / Виртуальная память / Virtual memory
Просмотров 2305 месяцев назад
1. Куда растет стек ? 2. Как виртуальная память соотносится с физической? 3. Какая структура виртуальной памяти? 4. Чем занята операционная система на самом деле? #C #virtualmemory #ОС #RAM #ОЗУ #stack #урокиснуля #счегоначатьпрограммирование #лаконично #qt #vovasharade #вовашараде
Уроки С++ / Урок #118 / Динамическое выделение памяти в С и С++ / Dynamic allocation C and C++ style
Просмотров 1566 месяцев назад
1. В каком случаи использовать malloc и free() ? 2. Когда использовать new и delete() ? 3. Что быстрее: динамическое выделение или объявление констант? 4. Быстрее С или С ? В этом видео будет проведен тест скорости выделения памяти при помощи функции clock(). Ссылка на исходник для экспериментов: bit.ly/46pKkLF Присылайте свои ответы мне в инстаграм: vovasharade или оставляйте по...
Уроки С++ / Урок #117 / Anonymous union / Typedef union
Просмотров 526 месяцев назад
1. Как сделать название union невидимым ? 2. Как создать псевдоним union ? 3. Есть ли разница между union с псевдонимом и без него ? #C #union #anonymous #typedef #урокиснуля #счегоначатьпрограммирование #лаконично #qt #vovasharade #вовашараде
Уроки С++ / Урок #116 / Union или объединение
Просмотров 696 месяцев назад
1. В чем главная фишка union ? 2. Что можно struct и нельзя union ? 3. Как лучше не использовать union ? Как лучше использовать: union rightSolution { int iVal; char cVal; } Когда вы присвоите значения любой из объявленных переменных объединения: //тут код ... union rightSolution myUnion; myUnion.iVal = 36; //там код ... и сделаете вывод на экран переменной myUnion.сVal : получим символ $ относ...
Уроки С++ / Урок #115 / Enum class (qualified enum or strong enum)
Просмотров 927 месяцев назад
1. Главное отличие qualified от nonqualified enum? 2. Как сравнить тип enum с целочисленными типами ? Чтобы использовать конкретный перечислитель qualified enum мы использовали оператор двойное двоеточие (::). Пример: // тут должен быть кусок кода ... enum class Partner {NEUTRAL, FIRST, SECOND, REVERSE}; Partner newPartner = Partner::FIRST; // newPartner 1 // и здесь ... #enum #C #qualified #ур...
Уроки С++ / Урок #114 / Перечисление (enum)
Просмотров 717 месяцев назад
1. Какие проблемы решают перечисления? 2. Можно ли значению enum присвоить int ? 3. Что будет, если объявить несколько перечислений с одинаковыми именами в одном пространстве имен? #enum #C #nonqualified #урокиснуля #счегоначатьпрограммирование #лаконично #qt #vovasharade #вовашараде
Уроки С++ / Урок #113 / Structured binding declaration или удобная связка
Просмотров 15611 месяцев назад
1. Как удобная связка помогает сократить количество строк кода? 2. Начиная с какого стандарта С появилась удобная связка? 3. Кто водит красный ВАЗ? #structuredbindingdeclaration #C 17 #урокиснуля #счегоначатьпрограммирование #лаконично #qt #vovasharade #вовашараде
Уроки С++ / Урок #112 / Анонимные структуры С/С++
Просмотров 116Год назад
1. Как сделать С код обратно совместимым с С ? 2. Как сделать анонимную структуру, которая будет работать только под Microsoft компилятор? Ссылка на урок по созданию псевдонимов: ruclips.net/video/qguw5w_2nyI/видео.html Описание анонимных структур на MSDN: bit.ly/43xIZkO #anonymous #structure #урокиснуля #счегоначатьпрограммирование #лаконично #qt #vovasharade #вовашараде
Уроки С++ / Урок #111 / Используем move для работы со ссылками
Просмотров 70Год назад
Как конвертировать ссылки l-value в r-value? Больше о move семантике: bit.ly/3qdguux #rvaluelink #lvaluelink #move #usage #урокиснуля #счегоначатьпрограммирование #лаконично #qt #vovasharade #вовашараде
Уроки С++ / Урок #110 / Используем ссылки r-value и l-value в перегруженных функциях
Просмотров 74Год назад
Уроки С / Урок #110 / Используем ссылки r-value и l-value в перегруженных функциях
Уроки С++ / Урок #109 / Свойства ссылок r-value и l-value.
Просмотров 60Год назад
Уроки С / Урок #109 / Свойства ссылок r-value и l-value.
Уроки С++ / Урок #108 / Автоматическое выравнивание С-структур при помощи #pragma
Просмотров 221Год назад
Уроки С / Урок #108 / Автоматическое выравнивание С-структур при помощи #pragma
Уроки С++ / Урок #107 / Размер C-структур. Выравнивание.
Просмотров 64Год назад
Уроки С / Урок #107 / Размер C-структур. Выравнивание.
Ответы на вопросы: Что читать? Слушать? Делать?
Просмотров 99Год назад
Ответы на вопросы: Что читать? Слушать? Делать?
Уроки С++ / Урок #106 / Вложенные пространства имен. Новые возможности С++ 17
Просмотров 81Год назад
Уроки С / Урок #106 / Вложенные пространства имен. Новые возможности С 17
Уроки С++ / Урок #105 / Встроенные пространства имен (inline)
Просмотров 85Год назад
Уроки С / Урок #105 / Встроенные пространства имен (inline)
Уроки С++ / Урок #104 / Вложенные пространства имен (namespace)
Просмотров 70Год назад
Уроки С / Урок #104 / Вложенные пространства имен (namespace)
Уроки С++ / Урок #103 / Что в себе таит namespace?
Просмотров 61Год назад
Уроки С / Урок #103 / Что в себе таит namespace?
Уроки С++ / Урок #102 / const_cast конвертация ссылок
Просмотров 239Год назад
Уроки С / Урок #102 / const_cast конвертация ссылок
Уроки С++ / Урок #101 / Higher-order lambda
Просмотров 35Год назад
Уроки С / Урок #101 / Higher-order lambda
Уроки С++ / Урок #100 / Вложенные lambda {nested lambda}
Просмотров 39Год назад
Уроки С / Урок #100 / Вложенные lambda {nested lambda}
Уроки С++ / Урок #99 / НЕмедленный вызов lambda
Просмотров 55Год назад
Уроки С / Урок #99 / НЕмедленный вызов lambda
Уроки С++ / Урок #98 / Оператор захвата lambda [ ]
Просмотров 45Год назад
Уроки С / Урок #98 / Оператор захвата lambda [ ]
Годно, а по qt что то планируется?
Благодарю! Планируется)
Спасибо , не удаляй этот плейлист добрый человек
зачем нужен вызов функции? почему нельзя объявить две переменные внутри main?
Конечно можно обьявить и просто переменные. Функция показывает, что память будет выделена в стеке.
спасибо мужику что пилит контент несмотря на маленькие просмотры и отклик под видео обнимаю
этот бло реальный сигма я кст 1 комментатор
Какой у вас Linux стоит?
Linux Mint x64 5.4.0-58-generic
почему так мало лайков и известности??????? Я в шоке!!!!
Просто потому, что на мой канал подписываются только умные и талантливые люди ценящие свое время и труд других людей)
Подписался. Почему так мало просмотров?
Спасибо за видео. Единственное, не очень понятно, почему появляется разрыв в 135000 бит, если вызывался sbrk с нулевым смещением
Спасибо за Ваш вопрос! Это происходит из за того, что мы вызываем функцию печати на экран printf(). Именно она выделяет под себя этот размер в первый раз, потом break не меняется. Вот тут подобный случай [bit.ly/3SXUH5L], Вы можете убедится, что это именно printf() - запустив вот такой простенький код: #include <fstream> #include <unistd.h> #include <stdio.h> using namespace std; int main () { ofstream myfile; myfile.open ("example.txt"); myfile << sbrk(0) << " "; myfile << sbrk(0); myfile.close(); return 0; } Он запишет адрес, который вернет sbrk( ), в файл.
Йенум?))) Это Энам!
Зачем вообще нужно тренарный оператор? Как то оптимизирует или укарачвает код? Почему не if оператор?
Да, это несет двоякий эффект. Он и количество инструкций сокращает и более компактный. Его недостаток - он не так хорошо читаем. Дело привычки...
Уточняю, на ассемблере (язык процессора, более низкоуровневый чем С++) if/else выглядит также, как и тернарный оператор. if (num == 6) { return num * num; } else return num; или return num == 6 ? num*num : num; Примерно так выглядит на ассемблере =) cmp DWORD PTR [rbp-4], 6 jne .L2 mov eax, DWORD PTR [rbp-4] imul eax, eax jmp .L4 .L2: mov eax, DWORD PTR [rbp-4] .L4: pop rbp ret
Большое спасибо за уроки!
+++
+++
Я просто клянусь, я посмотрю все твои видео(в них просто очень много того важного о чем обычно не говорят на других каналах). :D
Спасибо!
Всего 5 лайков? Этот человек замечательный решил мою проблему, примного благодарен)
Спасибо, за Ваш отзыв! Те кто ищут, всегда находят решение проблем.
Чел, спасибо, попал на это видео и хорошо объяснил тему без воды, посмотрел остальные видео с данного курса то понял чем я займусь в ближайшую неделю, буду смотреть курс)
А как давно вы программируете на С++? И сколько вам лет?
Спасибо за Ваш вопрос! С 2010 - 2015 изучал в университете, с 2015 по 2023 изучаю на работе)) Программировать так и не начал😜 Невежливо задавать 30 летнему мужчине такие вопросы!
Как всегда топ❤
Сенкью ❤
Кст есть еще мув сематика
Спасибо! Можно и про мув рассказать. Он в тему здесь...
Лайк за урок ❤
Спасибо за уроки ❤
А можете сделать урок по r-value ссылкам и универсальным ссылкам?
А разве не должно вывести 9?т.к char<short (3:29 )
Действительно хороший вопрос. Предположу, что поскольку последовательность была char -> char -> short, (1 + 1) + 2, то компилятор просто обьединил char как будто-бы они в одном массиве. Если Вы добавите еще один char перед short, выравнивание снова понадобиться.
О спасибо
Когда новые видео:?
Спасибо, что вдохновляете)
как всегда топ )
Ахметшин) не Ахметишин:3
Да, простите! Надеюсь ответил на ваши вопросы.
Можешь начать записывать курс по qt(именно самой библиотеке)?
Вся библиотека QT построена на принципах обьектно-ориентированного программирования (классы, инкапсуляция, наследование), при чем они, такое ощущение, С++ переписали под себя =). Мы еще только 30% просмотрели чего в С++ есть. Стараюсь давать дозированно, но сейчас пока даже и это не успеваю сделать)
@@vovasharade можешь тогда посоветовать литературе для изучения qt?
@@vovasharade кст можно давать в конце урока какие-то мини дз)
@@user-bj9ic3rm7i лично я пользуюсь мануалом, который можно у них на сайте найти. Хотя даже там иногда примеры могут быть для устаревшей версии QT. doc.qt.io/qt-6/gettingstarted.html Есть много хорошего контента на ютубе.
@@user-bj9ic3rm7i идея классная! теперь нужно только найти время)
Топ❤
Вот сейчас звук хороший.
Поменять тему на тёмную нужно, очень ярко так, на телефоне ничего в коде текста не видно!
Спасибо за Ваше замечание. Попробую такой формат в следующих видео.
Ура! Рад, что вернулся.
Спасибо за теплые слова! Будем продолжать...
а как его записать в файл? и считывать с файла
Как записать структуру в файл? Вас это интересует?
это было полезное видео
Спасибо за отзыв! На моем канале только полезные видео ;)
Спасибо за ролик. Все понятно обьяснил
❤
1:03
Спасибо за видео! не смотрели фремворк для C++ Ultimape++ ? было бы интересно узнать ваше мнение о нем, возможно даже уроки по нему.
Спасибо за Ваш комментарий! Простите за поздний ответ. С данным фреймворком не работал. Кратко ознакомился. Мое мнение, что зная основы языка C++ в дальнейшем можно выбрать фреймоворк на вкус и цвет, смотря что будете создавать и для каких целей. Изучать языки можно и в блакнотике набирая код. Пока что мы до возможностей QT, как фреймоврка, еще не дошли.
Кто может сказать, где я допустил ошибку, когда называл функции в пространствах имен?
Спасибо за уроки! Топовый канал, жаль что мало подписчиков.
Благодарю за Ваш отзыв! Хочу сделать программирование доступным для всех)
Спасибо, очень интересно.
Большое спасибо
Может лучше сначала узнать что вообще происходит в коде, прежде чем его комментировать?
Добрый день! Если Вы о программе-калькуляторе, которую здесь мы дорабатываем, посмотрите урок 90 (ruclips.net/video/BxBmi2ReyJA/видео.html)
Спасибо, думал что не узнаю ничего нового о типах данных, но ты меня удивил) стринг это класс, вот почему у него есть свойства! Спасибо друг!
Отличные уроки, необычные примеры, которые есть далеко не в каждой книге!
Спасибо за урок!
спасибо!
Ух как опасно с типом ошибиться на плюсах... спасибо!
Особого внимания заслуживает момент приведения типов (переход от одного типа к другому) и трансляция типов (от беззнакового к знаковому целочисленному). Но об этом ближе к 27 уроку. Там будет все это подробно рассматриваться.
Спасибо, дружище. Пол гугла перечитал. Везде много воды и сложных формулировок, в итоге ничего не понятно. Твоё объяснение супер, после него и сложные формулировки понятны стали!
Спасибо, за отзыв!
Спасибо друг, отличные уроки!
Спасибо за отзыв!