Многофайловый проект | Изучение С++ для начинающих. Урок

  Рет қаралды 160,628

#SimpleCode

#SimpleCode

6 жыл бұрын

Прототипы функций. Прототип функции что это. Прототип функции пример. C++ для начинающих. Урок #36
bit.ly/2HjhFNB
Определение методов вне класса. Вынести функцию в из класса. Вынести описание метода вне класса. #89
bit.ly/2K7NnPF
Пространства имен с++. namespace c++ что это. Изучение С++ для начинающих. Урок #125
bit.ly/2qRrPOo
✅Если вам нравятся мои уроки, вы хотите поддержать меня и развитие канала, то можете сделать это тут!=)
✅ www.donationalerts.ru/r/simple...
Уроки по программированию
✅Наша группа ВК smplcode
✅Подписывайтесь на канал / @simplecodeit

Пікірлер: 140
@SimpleCodeIT
@SimpleCodeIT 6 жыл бұрын
*Cамый лучший способ сказать "спасибо" - поставить лайк и и поделиться уроком с друзьями. Это очень мотивирует создавать полезные уроки =)*
@user-kt1jb5vo3e
@user-kt1jb5vo3e 3 жыл бұрын
спасибо БОЛЬШОЕ что нашли не заезженную тему . . . именно подобного этому мало в ЮТУБЕ - например, взаимодействие частей программы, навыки и приемы программирования, поиск программ в сети (на гит-хаб) и пр.
@yidebn7536
@yidebn7536 2 жыл бұрын
кто то знает как собрать из папки с файлами внутри 1 dll?
@javiervazquez9630
@javiervazquez9630 4 жыл бұрын
Thank you for the support i didn't anything of russian language but i understand the text, you helped me because i doesn't found examples like yours. By the way, i am mexican but doesn't matter, thanks for all!!.
@AV1ch
@AV1ch 3 жыл бұрын
So you read google translated English from machine-generated Russian and still succeeded? I say you're lucky )
@mao3193
@mao3193 3 жыл бұрын
Афигеть. Тут информацию на русском не достать, приходиться в английский источники лезть. А тут все наоборот XD
@vlad7terentev
@vlad7terentev 6 жыл бұрын
какой же кайф, когда ты объясняешь так, что я понимаю с первого раза)) Как всегда на высоте!
@user-do1pb5rl3d
@user-do1pb5rl3d 6 ай бұрын
Большое спасибо Сергей! Вы даже не представляете, какой шикарный контент Вы создали! Купил курс на Скиллбоксе, а учусь по вашим урокам. Лучшего контента по с++ на просто нет!
@user-rp6qg4yg2c
@user-rp6qg4yg2c 6 жыл бұрын
Спасибо! Давно ждали урок про многофайловые проекты.
@user-im9vz7xr4w
@user-im9vz7xr4w Жыл бұрын
Надо иметь талант, чтобы грамотно объяснять !
@skandinow
@skandinow 2 жыл бұрын
Как же понятно! Спасибо.
@user-wd4js9jl5z
@user-wd4js9jl5z 6 жыл бұрын
Ураааааа!!!!я ждал)Спасибо большое)
@stanislavafellay7822
@stanislavafellay7822 4 жыл бұрын
Отлично объясняете !! Очень подробно
@go5190
@go5190 6 жыл бұрын
Спасибо, за интересные уроки
@andreyzavalishchev4818
@andreyzavalishchev4818 6 жыл бұрын
спасибо за отличное объяснение!
@Dmitrii82
@Dmitrii82 6 жыл бұрын
Очень важный урок! Спасибо.
@andrewbistroff7558
@andrewbistroff7558 6 жыл бұрын
Сергей спасибо за шикарный урок!
@nap0le0nb0naparte7
@nap0le0nb0naparte7 6 жыл бұрын
Спасибо за урок Сергей! Давно ждал урок про многофайловые проекты. Как всегда высший класс!!!
@Ermine882
@Ermine882 6 жыл бұрын
Очередное спасибо за урок.
@frankbelfort8967
@frankbelfort8967 6 жыл бұрын
Спасибо, отличный урок, все очень подробно и понятно)
@SS-vo9id
@SS-vo9id 2 жыл бұрын
Как же ты понятно объясняешь, спасибо от души.
@vn8598
@vn8598 2 жыл бұрын
Спасибо! Очень подробно и интересно рассказываете
@user-vk1un6bm6p
@user-vk1un6bm6p 3 жыл бұрын
Очень полезный урок. Многое стало на свои места. Спасибо!!!
@vladalu9794
@vladalu9794 6 жыл бұрын
Спасибо огромное Сергей, очень интересный урок!!!
@kazikhangereykhanov7758
@kazikhangereykhanov7758 6 жыл бұрын
Спасибо давно ждал
@artlinestudio6735
@artlinestudio6735 2 жыл бұрын
Один из любимых уроков! Смотреть под кофе просто отлично! Спасибо! Просим продолжить уроки по С++. Самый интересный язык :)
@user-ni2zy8zi6j
@user-ni2zy8zi6j 3 жыл бұрын
Дай вам боженька здоровья, уроки замечательные!!!!
@Son-of-the-God---
@Son-of-the-God--- 2 жыл бұрын
Спасибо Сергей, здоровья вам, и долгих лет жизни!
@croche3398
@croche3398 6 жыл бұрын
Как всегда на высоте! :)
@sankarshanarama6753
@sankarshanarama6753 2 жыл бұрын
Серёжа!!! Дай Бог тебе здоровья! Наконец-то понятно эту тему раскрыл для себя))
@user-oo2cy4pl6y
@user-oo2cy4pl6y 7 ай бұрын
Отличное объяснение материала, спасибо
@user-jc5fk6tm7c
@user-jc5fk6tm7c 8 ай бұрын
Ты мастер своего дела! Спасибо за то что ты есть!
@C2H5OHH
@C2H5OHH 2 жыл бұрын
Супер, спасибо!
@segars9604
@segars9604 2 ай бұрын
Спасибо за бесценный труд!)
@pavelios3577
@pavelios3577 5 жыл бұрын
Спасибо за видео.
@KurpatovInstagram
@KurpatovInstagram 6 жыл бұрын
Спасибо!
@HugoBossKosta
@HugoBossKosta 2 жыл бұрын
наконец-то тема про многофайловый проект, спасибо большое!!!
@dmitry3154
@dmitry3154 6 жыл бұрын
Очень важная тема, больше уроков про многофайловые проекты
@Antonov_Ivan.
@Antonov_Ivan. 5 ай бұрын
Спасибо за урок!
@user-kk6ob5ud3n
@user-kk6ob5ud3n 3 жыл бұрын
Спасибо огромное) Как всегда выручаешь
@user-nn3bp3sv2o
@user-nn3bp3sv2o 2 жыл бұрын
Если бы не ты, то я бы не знаю, что делал. Огромнейшее спасибо тебе за Все уроки, смотрю и кайфую от того, что все супер-понятно)
@user-qj6tk5fw9p
@user-qj6tk5fw9p 2 жыл бұрын
Круто, очень хорошо обьясняешь, большое спасибо)
@radium6230
@radium6230 6 жыл бұрын
Спасибо за урок. Хотелось бы уроки про unit тесты, лямбды и функторы
@Ivan-Shyriaiev
@Ivan-Shyriaiev 4 жыл бұрын
Блин это ж супер удобно... + Смысл Инкапсуляции стал более понятный. Спасибо большое !
@getwellsoonsoonsoon
@getwellsoonsoonsoon 24 күн бұрын
Спасибо, вы мне помогли!
@mikkin329
@mikkin329 9 ай бұрын
Спасибо большое!
@abakarkamalov7417
@abakarkamalov7417 4 жыл бұрын
Спасибо) Благодаря Вам понял)
@user-iv8ci1ml4q
@user-iv8ci1ml4q 6 жыл бұрын
Cпасибо!
@mykhailomorhal2181
@mykhailomorhal2181 6 жыл бұрын
Спасибо)
@timati231
@timati231 6 жыл бұрын
спасибо за объяснение, всё четко и понятно. Сделай пожалуйста видел про библиотеку random и принципы ее работы.
@CYBERTeamOnlineSportTV
@CYBERTeamOnlineSportTV 5 жыл бұрын
Лучший, красава дядь)
@Retyioaqe
@Retyioaqe 5 жыл бұрын
Если появляется предупреждение "ISO C++ forbids converting a string constant to 'char*'", то следует написать: void MyClass::PrintMessage(const char str[]){ std::cout
@gogawriter9718
@gogawriter9718 4 жыл бұрын
А почему эта херня вылазит?
@ihy1234
@ihy1234 4 жыл бұрын
@@gogawriter9718 Потому что "вот так записанная строка" - это const char* (её невозможно изменить) , а функция PrintMessage принимает неконстантный char* (предполагается, что его возможно изменить). Короче, когда функция не изменяет данные которые в неё передаются надо всегда приписывать const.
@iTema82
@iTema82 2 жыл бұрын
не забудьте в Хедере MyClass.h тоже поменять описание функции void PrintMessage(const char str[]);
@user-mm5ln4qh5q
@user-mm5ln4qh5q 2 жыл бұрын
Появляется*
@sS1nT-
@sS1nT- 14 күн бұрын
да, либо использовать string)
@edgull_tlt
@edgull_tlt 2 жыл бұрын
Спасибо
@NIKOLAY_PSHONIA
@NIKOLAY_PSHONIA 5 жыл бұрын
Спасибо за труды. Теперь не тупо пишу в один листинг а разбиваю.
@user-sx4se9sd5c
@user-sx4se9sd5c 4 жыл бұрын
Прекрасный урок, я бы его добавил при изучении Класса, у нас к примеру в Джава сразу учили выносить все в разные папки и каждый класс делать в отдельно созданном классе( имеется в ввиду отдельный класс в cpp с аналогией в С++)
@sleepyNovember_project
@sleepyNovember_project 5 ай бұрын
О да, это удобно, это сладко
@user-kb6qd8rg4g
@user-kb6qd8rg4g 4 жыл бұрын
спасибо
@pluto2656
@pluto2656 6 жыл бұрын
следующий анонсированный урок жду больше, в свое время пришлось пострадать)
@MrBlackKinght
@MrBlackKinght 3 жыл бұрын
Во-первых спасибо за уроки они бесценны, а теперь вопрос: а нет случаем способа работать с шаблонными классами в понятии многофайлового проекта? По стандарту с++ реализацию таких классов советуют писать в самом header класса, но хотелось бы это делать в cpp. Буду очень благодарен за ответ.
@vvl6436
@vvl6436 6 жыл бұрын
Спасибо за урок, не могли бы вы сделать урок на тему, "Перегрузка операторов при полиморфизме"? , а то инфо мало. Например: есть абстрактный базовый класс, A от него B, C и при перегрузке равно B = C , результат был типа B и наооборот.
@Sergey-mq3ol
@Sergey-mq3ol 5 жыл бұрын
cool
@romaniancoder5187
@romaniancoder5187 6 жыл бұрын
Спасибо за видео, Сергей. Не могли бы вы сделать урок про лексический анализ строк (например, как считать строку и разбить ее на составляющие, чтобы, например, написать калькулятор)
@user-mm5ln4qh5q
@user-mm5ln4qh5q 2 жыл бұрын
Если в строке будет простое выражение с одним действием типа 2*6.2, то можно заюзать регулярные выражения. Это намного проще и удобнее, чем писать огромный парсер (это уже для сложных математических выражений).
@romaniancoder5187
@romaniancoder5187 2 жыл бұрын
@@user-mm5ln4qh5q Спустя четыре года я стал девопсом и поднимаю куберы, но было приятно пересмотреть ролик вновь и поностальгировать с того, с чего начинал )
@user-mm5ln4qh5q
@user-mm5ln4qh5q 2 жыл бұрын
@@romaniancoder5187 рад за тебя) А меня пока никуда не хотят принимать
@user-jb2ek3lk6c
@user-jb2ek3lk6c 2 ай бұрын
@@user-mm5ln4qh5q Как успехи сейчас?
@kucer0043-Games
@kucer0043-Games 5 ай бұрын
4:20 начало
@BossBig-hi1ym
@BossBig-hi1ym 7 ай бұрын
лайк с двух аккаунтов)
@EJNINE
@EJNINE 3 жыл бұрын
Большое спасибо, за помощь бедным студентам))0
@user-hv1dh3jw3v
@user-hv1dh3jw3v 6 жыл бұрын
Здравствуйте! Тоже ждал подобного урока, но у меня есть вопрос на который я пока не нашел ответ или пример реализации. Как использовать в cpp файле объект класса созданный в другом cpp файле. Пример: пишу программу для устройства на микроконтроллере. Использую стороннюю библиотеку для вебсервера. В файле init.cpp создаю объект класса: WebServer server(80); В этом файле также делаю инициализацию сервера с помощью методов данного класса, например server.begin(); и т.д. А в основном файле main.cpp я использую методы для работы с сервером server.on(........); server.handleClient(); и т.д. Соответственно в main.cpp мне как-то нужно достучаться до объекта server, пробовал объявлять как extern WebServer server(80); компилятор выдает multiply definition, пробовал extern WebServer server(int port); вылазит другая ошибка. Подскажите правильный механизм. Заранее спасибо. P.S. Если создаю объект без параметров, например Websocket socket в файле init.cpp, а в main файле: extern Websocket socket; такой объект виден в main.cpp и компиляция проходит. Я так понимаю у меня ошибка в синтаксисе - extern WebServer server(int port);
@Alex_Railnolds
@Alex_Railnolds 4 жыл бұрын
Подскажите, возможно ли как-то сделать так, чтобы директивы препроцессора тип #define работали во всем многофайловом проекте, а не только там где они были объявлены? Ну чтобы во всех файлах происходило замещение. Например сделать отдельный файл типа конфигурационный, где через #define задать какие-то значения, а потом эти значения распространились бы на все файлы проекта.
@brainboom5509
@brainboom5509 5 жыл бұрын
Почему у меня чтобы заработало нужно подключать .cpp файл, а не .h ?
@cppprograms5868
@cppprograms5868 4 жыл бұрын
мне кажется что вы знаете С++ лучше чем сам Страуструп. А объясняете просто как зверь. Спасибо!!1
@Face-gz4gc
@Face-gz4gc 4 жыл бұрын
Невежда, ты просто не умеешь читать.
@cppprograms5868
@cppprograms5868 4 жыл бұрын
@@Face-gz4gc почему сразу невежда?
@Face-gz4gc
@Face-gz4gc 4 жыл бұрын
@@cppprograms5868 чувак, ты сказал автора канала, который учился по тем же книгам создателей, умнее их
@cppprograms5868
@cppprograms5868 4 жыл бұрын
@@Face-gz4gc я сказал что "мне кажется". Придурок сам научись читать нормально.
@unclestepa
@unclestepa 2 жыл бұрын
Как включить желтые вертикальные полосы слева?
@user-zm8qw4me3s
@user-zm8qw4me3s Жыл бұрын
Добрый день, спасибо за видео-урок все очень доступно и понятно. Подскажите, пожалуйста, как можно использовать наследование классов в многофайловом проекте?
@GetBoros
@GetBoros Жыл бұрын
Наследуемся от exception. Главное не забивать подключить директиву препроцессора где лежит предок class AsLesson_Exception : public exception { public: AsLesson_Exception(const char *msg, int Data_State); int Get_Data_State(); private: int Data_State; };
@_m.k.s_8060
@_m.k.s_8060 2 жыл бұрын
Как сделать так, что бы из дополнительного .срр файла значение при вызове функции присваивалось переменной
@_imperial_6762
@_imperial_6762 6 жыл бұрын
У меня студия 17-го, подчеркивает строку m.PrintMasseg("Hello World!"); а если быть точным то строку которую мы передаем "Hello World!" , ругается и пишет что не может конвертировать const char[] to char[]?
@user-vw8iw7sv9o
@user-vw8iw7sv9o 8 ай бұрын
А разве подключение сразу двух библиотек иострим не слишком затратно по памяти ?
@Nuisho
@Nuisho 6 жыл бұрын
Лайкнул - посмотрел - раскидал по месенджерах. Что за 8-битная музычка на фоне тихонько так играет?
@SimpleCodeIT
@SimpleCodeIT 6 жыл бұрын
Demise - Ethan Meixsell
@Flamerman-rx5bp
@Flamerman-rx5bp 2 жыл бұрын
А структуру как записывать в эти файлы?
@s1lentgrave
@s1lentgrave 4 жыл бұрын
А если я в другой компилятор использую Atom+ плагин gpp, я сделал тоже самое, только всё в одной папке(без папки "заголовочные файлы") у меня не находится функция из другого файла, что делать? может нужно через командную строку создать проект как-то, чтобы все нужные папки создались(например)?
@wotmastersclub5559
@wotmastersclub5559 11 ай бұрын
Посмотрел и расстроился 😢 Как оказывается много чего не знаю
@sleepyNovember_project
@sleepyNovember_project 5 ай бұрын
Чего расстраиваться, наоборот, если не знал, то это крутая и не сложная инфа, которую приятно узнать
@JohnSmith-es2fh
@JohnSmith-es2fh 3 жыл бұрын
а обязательно добавлять cpp файл? просто я делал без cpp и у меня всё было норм
@johnwick8332
@johnwick8332 6 жыл бұрын
Сергей индивидуальные уроки не проводите?
@SimpleCodeIT
@SimpleCodeIT 6 жыл бұрын
Сейчас нет.
@gant8511
@gant8511 6 жыл бұрын
а когда будут курсы по с#
@bezik572
@bezik572 2 жыл бұрын
эх... Все летит с ошибкой: Undefined symbols for architecture arm64: "Sum(int, int)", referenced from: _main in main.cpp.o... Дело не в арм, на Rosetta 2 тоже самое. Если не подключать файл в CmakeLists.txt, то ничего не работает, но так быть точно не должно
@bezik572
@bezik572 2 жыл бұрын
скорее всего .h не инициализирует cpp
@serhiyhrytsiuk4376
@serhiyhrytsiuk4376 6 жыл бұрын
Просто для апа
@Alexander-qr4nk
@Alexander-qr4nk Жыл бұрын
А 138-й урок существует?
@vakhander1287
@vakhander1287 3 жыл бұрын
ЗДравствуйте, а что делать если пишет: undefined reference to `List_str::push_back(std::__cxx11::basic_string
@vakhander1287
@vakhander1287 3 жыл бұрын
Если что List_str (мой класс), push_back (метод класса) и дальше идут аргументы метода.
@streview2254
@streview2254 4 жыл бұрын
А як створити йього без VS, в провіднику.
@realkjasonstatham
@realkjasonstatham 2 жыл бұрын
Комментарий
@yidebn7536
@yidebn7536 2 жыл бұрын
кто то знает как собрать из папки с файлами внутри 1 dll?
@fv_games
@fv_games Жыл бұрын
А как насчёт hpp
@sleepyNovember_project
@sleepyNovember_project 5 ай бұрын
А это не тот же .h?
@natalysammet656
@natalysammet656 4 жыл бұрын
Делала всё, как в видео, но почему-то среда разработки в упор не видит cpp файла с реализацией :(
@MashkaShow
@MashkaShow 4 жыл бұрын
Nataly Sammet visual studio code? Macos?
@natalysammet656
@natalysammet656 4 жыл бұрын
@@MashkaShow К счастью, я нашла решение :) Дело в том, что я занималась реализацией шаблонного класса - тогда ещё не знала, что такие классы нельзя разбивать на хидеры и cpp-шники. Теперь вот знаю
@moonrider8697
@moonrider8697 6 жыл бұрын
Кто нибудь знает что делать если при выводе строки пишет невозможно преобразовать аргумент 1 из const char[11] в char []???
@Ii_Naomasa_san
@Ii_Naomasa_san 6 жыл бұрын
Я, короч, перед char дописал const и всё заработало.
@moonrider8697
@moonrider8697 6 жыл бұрын
Evgenii Lucevich спасибо
@user-rm3eu6we8c
@user-rm3eu6we8c 5 жыл бұрын
дело в последних обновах VS2017,
@Yupitrer
@Yupitrer 4 жыл бұрын
Я как раз тот случай. Начал писать ардуино умный дом на с++ и у меня 1500 строк кода. И это пизд..ц. Вот я тут
@WizardPlatypus
@WizardPlatypus 4 жыл бұрын
Время доброе! #вопрос : как отделить реализацию шаблонного класса от хедера? Я немножко порылся в сети, ничего дельного и красивого не обнаружил.
@cashperovskygo3318
@cashperovskygo3318 5 жыл бұрын
не понятно зачем нужна 2 файла cpp и h? зачем в h писать пустую функцию а в cpp описанную?
@Buru-nyuu
@Buru-nyuu 5 жыл бұрын
В начале же объяснили всё, .h файлы чтобы не было много кода в основном файле, а вот .cpp нужно использовать чтобы избежать ошибок компоновщика(погуглите)
@user-wd4js9jl5z
@user-wd4js9jl5z 6 жыл бұрын
Сергей обещаю,когда стану разработчиком,тебе задоначу половину своей первой зарплаты)
@user-ig2xs1ge5z
@user-ig2xs1ge5z 4 жыл бұрын
Ну как успехи?
@habibullohuvaidulloev3329
@habibullohuvaidulloev3329 2 жыл бұрын
так многие говорили ....
@zexis1771
@zexis1771 Жыл бұрын
Стал?
@KhzhLIVE
@KhzhLIVE 6 жыл бұрын
может сменишь уже музло)
@KhzhLIVE
@KhzhLIVE 6 жыл бұрын
приелся уже запил)
@higiro9333
@higiro9333 3 жыл бұрын
Нахуя тут так сложно придумали?? Почему нельзя по нормальному залить один файл в другой без всяких там заголовков, прототипов и тд..
@pudjeblechole
@pudjeblechole Жыл бұрын
Можете подсказать объяснить, почему нельзя написать определение (реализацию) функции в хедере?
@artefek7300
@artefek7300 Ай бұрын
Можно, но скорее всего он был создан чтобы только оглашать.
@ELVIRA_JDANOVA
@ELVIRA_JDANOVA 5 ай бұрын
ЗДРАВСТВУЙТЕ УРОК 138 НЕ МОГУ НАЙТИ 137 СЛЕДОМ ИДЕТ 139 ПОСЛЕ БИБЛИОТЕК STL !
@user-jb2ek3lk6c
@user-jb2ek3lk6c 2 ай бұрын
он идет после 9 урока STL
@sashatim8244
@sashatim8244 6 жыл бұрын
Спасибо!
@euaek
@euaek 3 жыл бұрын
Спасибо большое.
@user-hb7er4ff9u
@user-hb7er4ff9u 2 жыл бұрын
спасибо
@miroslavklyukovsky683
@miroslavklyukovsky683 2 жыл бұрын
Спасибо!
@Symon_Musician
@Symon_Musician Жыл бұрын
Спасибо!
Василиса наняла личного массажиста 😂 #shorts
00:22
Денис Кукояка
Рет қаралды 10 МЛН
Survival skills: A great idea with duct tape #survival #lifehacks #camping
00:27
Вечный ДВИГАТЕЛЬ!⚙️ #shorts
00:27
Гараж 54
Рет қаралды 13 МЛН
How I wrote online shooter on C++ in a week
25:31
Vectozavr
Рет қаралды 1 МЛН
Собеседование Junior C++
45:32
Ambushed Raccoon
Рет қаралды 102 М.
Преобразование типов данных в языках С и С++
11:10
Оксана Еськова. Основы программирования
Рет қаралды 446
Изучение C# в одном видео уроке за час!
1:06:08
Гоша Дударь
Рет қаралды 865 М.
ты C++ РАЗРАБОТЧИК?) ага
12:04
Winderton
Рет қаралды 228 М.
Всё об указателях в C++ за 20 минут
20:00