ТОП вопросов на С++ собеседовании | Вопросы и задачи с реальных собеседований

Поделиться
HTML-код
  • Опубликовано: 16 дек 2024

Комментарии • 139

  • @vladimir_balun_programming
    @vladimir_balun_programming  Год назад +6

    Попадались ли тебе вопросы из этого видео на собеседованиях по С++?

  • @viper_0097
    @viper_0097 10 месяцев назад +11

    Очередное мотивирующее видео, которое в очередной раз подтверждает, что я нифига не знаю

  • @cppprograms5868
    @cppprograms5868 4 года назад +29

    ООО, класное видео.
    Давай продолжай делать подобные видосы.

  • @nickmorphius1
    @nickmorphius1 9 месяцев назад

    Оказывается, многое знаю, но одновременно многое нужно изучать. Спасибо!

  • @narzaru
    @narzaru 9 дней назад

    Еще стоит добавить, что при private наследовании полиморфизм невозможен, что равносильно комозиции. Но остаются плюсы наследования - override, использование protected полей и методов, возможность играться с конструкторами и методами с использованием using.

  • @m.nartov
    @m.nartov 3 года назад +23

    на счет new и malloc так же стоит упомянуть, что new является типозащищенным выделением, ибо компилятор заранее знает, под какого типа объект память будет выделяться

    • @vladimir_balun_programming
      @vladimir_balun_programming  3 года назад +7

      Там много еще нюансов, исключения, placement new и так далее...
      Рассказал о самом основном.

    • @alexla_grange8957
      @alexla_grange8957 Год назад

      Ох ты ж бля, Страуструп, это ты??

  • @TheQRSK
    @TheQRSK 8 месяцев назад +1

    5:59 Уfind для std::set (т.к. он на бинарных деревьях поиска) и поиска дихотомией по упорядоченному std::vector одинаковая асимптотическая сложность O(log2 n).

    • @Look-and-say
      @Look-and-say 24 дня назад

      Тоже полез смотреть и что там, что там одинаково.

  • @НиколайОвчинников-д6э

    Познавательно, сразу ясно что ничего не знаешь 🤯

    • @vladimir_balun_programming
      @vladimir_balun_programming  3 года назад +1

      Все возможно изучить, главное только желание)

    • @Ромбокубоктаэдр
      @Ромбокубоктаэдр 3 года назад +1

      @@vladimir_balun_programming Не посоветуете случаем, как лучше это учить? Книги может какие? Я базовый уровень языка выучил, но в видео для меня было много неизвестного

  • @bloodyink3423
    @bloodyink3423 3 года назад +6

    В топике про ссылки я бы также добавил:" Ссылка семантически эквивалентна той переменной, на которую она ссылается. Значение ссылки постоянно, задаётся в момент ее создания и неизменно (на протяжении жизни)".

  • @Вальдес-з7й
    @Вальдес-з7й 3 года назад +4

    Заебись! Четко!

  • @camomileteamusic7618
    @camomileteamusic7618 28 дней назад

    Все впринципе по стандарту( шучу, учу с++ вторую неделю и понимаю что с моим ограниченным временем в моменте мне учить около 2 лет до Джуна, если не брошу) но я так и планирую впринципе начать искать работу в it через года полтора два ибо понимаю что эти знания не только надо знать ,их надо прочувствовать в работе в практике и тд

  • @taphit7820
    @taphit7820 3 года назад +61

    сложна, рано мне на джуна устраиваться, ну зато хоть знаю, что учить ещё нужно

  • @kratosfromsparta
    @kratosfromsparta 2 года назад +3

    2:15. Только процесс называется не компиляции, а сборки. Процесс сборки проекта: препроцессинг, компиляция, линковка.

  • @hero4152
    @hero4152 3 года назад +22

    Блин, а как быть тем кто использует с++ и никогда не задумывался как компилятором например устроены vtable или каким образом он оптимизирует последовательности операторов?

    • @letmeregisterbitch
      @letmeregisterbitch 3 года назад +6

      Сесть и понять как это работает

    • @vladimir_balun_programming
      @vladimir_balun_programming  3 года назад +4

      Мне кажется, чем больше тонкостей и нюансов знает разработчик, тем он более крутой специалист!
      Конечно же, знать все абсолютно нереально, но стремиться к этому все-таки стоит)

  • @НикитаСолоненко-р5ы
    @НикитаСолоненко-р5ы 10 месяцев назад +1

    А как же move семантика, perfect forwarding, decltype, лямды и тп, это разве не спрашивают?

  • @armoginesis
    @armoginesis 3 года назад +3

    Спасибо

  • @ИванПетров-м4т2г
    @ИванПетров-м4т2г 3 года назад +3

    Для дедлока достаточно одного мьютекса. Например рекурсия. Или в первом методе берём мьютекс и потом вызываем второй метод, в котором так же пытаемся взять мьютекс. Приехали. std::mutex не рекурсивный.

    • @vladimir_balun_programming
      @vladimir_balun_programming  3 года назад +1

      Это UB, возможен как дедлок, так и и другая непредвиденная ситуация.

  • @A_D_E_P_T_U_S
    @A_D_E_P_T_U_S 3 года назад +3

    еще очень часто спрашивают про RAII

  • @jesseocean5507
    @jesseocean5507 2 месяца назад

    как это запомнить то всё?

  • @kantocoder5046
    @kantocoder5046 2 года назад +1

    ЕМНИП, если в классе нет виртуальных функций, то virtual table не создается.

    • @vladimir_balun_programming
      @vladimir_balun_programming  2 года назад +1

      А видео разве говорится, что создается? Я не помню такое, чтобы там было

  • @ВладимирСоколов-п5у
    @ВладимирСоколов-п5у 3 года назад +5

    Надо бы громкость микрофона увеличить вам, плохо
    слышно

  • @Лучше-Проще
    @Лучше-Проще 3 года назад +2

    какие материалы необходмио и достаточно изучить, чтобы самостоятельно ответить на данныые вопросы?

    • @vladimir_balun_programming
      @vladimir_balun_programming  2 года назад

      Не могу посоветовать что-то конкретное...
      Это скорее итеративный процесс изучения теории и закрепления ее практикой)

  • @narzaru
    @narzaru 9 дней назад

    Ну и реализця std::map не закреплена стандартом, просто сказать про свойства контейнеров.

  • @sashawhite6792
    @sashawhite6792 4 месяца назад

    А сейчас вопросы на собеседованиях такие же? Или входной порог уже вырос за 4 года?

  • @alexanderizotov3011
    @alexanderizotov3011 3 года назад +5

    Расскажи пожалуйста как лучше учиться работе с компьютерными сетями. А ля систематичный план)

  • @kartostroy
    @kartostroy 3 года назад +5

    Про вопрос о том, где будет быстрее поиск: поиск быстрее будет в сете, т.к. сет такое же дерево, как и мап, т.е. отсортированное, вектор по-умолчанию не сортирует элементы, а в описанном коде нет гарантии того, что вектор определен элементами в отсортированном порядке. Более того, скорее всего можно получить ошибку в рантайме или даже ошибку компиляции( этот момент нужно уточнить).

  • @angrytutus3653
    @angrytutus3653 3 года назад +2

    А в гейм-студиях такие же вопросы будут задавать по C++?

    • @blackman852
      @blackman852 3 года назад

      Нет

    • @prog_life
      @prog_life 3 года назад +1

      Получал тестовое от туда,задание было написать алгоритм А*

    • @vladimir_balun_programming
      @vladimir_balun_programming  3 года назад

      Все зависит от конкретной компании, но так или иначе, любая компания, тем или иным образом, смотрит на то, как вы обращаетесь со своим инструментом (языком программирования)

  • @bumbarabun
    @bumbarabun 4 года назад +4

    Немного поправлю, const int value = *it; безопасно не зависимо от того, инвалидируется итератор после этого или нет. Небезопасным будет const int &value = *it;

    • @rumgot
      @rumgot 4 года назад +1

      Это оттого, что после разыменовывания любое содержимое можно привести к int?

    • @bumbarabun
      @bumbarabun 3 года назад +1

      @@rumgot нет, это от того, что ссылка указывает на оригинальное значение, если то значение поменяется, то и значение по ссылке изменится, если *it станет невалидным, то и ссылка невалидна. А в первом случае значение копируется в переменную int и не важно const она или нет, это отдельная копия и она будет хранить свое значение.

    • @aleyer_s
      @aleyer_s 3 года назад

      Конкретно в примере 5:20 итератор может стать невалидным до строки const int value = *it;, как я понимаю)

  • @linuxoidovich
    @linuxoidovich Год назад +1

    Как-то просто все. Тут базовая база и многого из нее нету, например, мув семантика.

  • @DungeonAdmin
    @DungeonAdmin Год назад

    Чего? Я думал struсt просто свой тип данных где есть разные типы данных, не знал что у него есть наследственность и методы

  • @ruslanvolovik2745
    @ruslanvolovik2745 4 года назад +3

    А как давно ты закончил институт?

    • @vladimir_balun_programming
      @vladimir_balun_programming  4 года назад

      У меня нет высшего образования на данный момент...

    • @ruslanvolovik2745
      @ruslanvolovik2745 4 года назад

      @@vladimir_balun_programming еще студент...?

    • @vladimir_balun_programming
      @vladimir_balun_programming  4 года назад +1

      @@ruslanvolovik2745 Да, учусь заочно, но за плечами уже более трех лет промышленной разработки

    • @ruslanvolovik2745
      @ruslanvolovik2745 4 года назад

      @@vladimir_balun_programming да у меня тоже почти 2

    • @vladimir_balun_programming
      @vladimir_balun_programming  4 года назад +1

      @@ruslanvolovik2745 ииии... что в итоге?)

  • @Ланс-м1в
    @Ланс-м1в 3 года назад +5

    Знание у начинающих по шаблонам на уровне книги Александреску? Кажется, это через чур. Что тогда знать должен разработчик среднего уровня?

    • @vladimir_balun_programming
      @vladimir_balun_programming  2 года назад +3

      Там имелось в виду книга Александреску уже не для начинающих разработчиков)

  • @alexskatkov2124
    @alexskatkov2124 3 года назад +2

    Не очень расслышал совет, у кого читать шаблоны?

    • @vladimir_balun_programming
      @vladimir_balun_programming  3 года назад

      Современное проектирование на C++ | Александреску Андрей

    • @alexskatkov2124
      @alexskatkov2124 3 года назад

      @@vladimir_balun_programming Спасибо!

  • @absoriann
    @absoriann 3 года назад +3

    Можно ли без вышки стать джуном?

    • @vladimir_balun_programming
      @vladimir_balun_programming  3 года назад

      Да, конечно!

    • @infinityen7659
      @infinityen7659 3 года назад +1

      Видимо вы хотели спросить:
      Можно ли с вуза стать Джоном ??
      Ответ: нет.

  • @misana77
    @misana77 4 года назад +2

    Задачка для любопытных: как добиться дедлока с помощью одного мьютекса?

    • @vladimir_balun_programming
      @vladimir_balun_programming  4 года назад +5

      Рекурсивно, если это не recursive_mutex конечно 👌🏻

    • @bumbarabun
      @bumbarabun 4 года назад

      @@vladimir_balun_programming на самом деле никак. Программа может уйти в дедлок, но это не обязательно. UB

    • @garorobe
      @garorobe 4 года назад

      @@bumbarabun А причём тут UB? Вопрос стоял как в дедлок уйти

    • @bumbarabun
      @bumbarabun 4 года назад

      @@garorobe UB при том, что никакое поведение не гарантировано. Сегодня может уйти в дедлок, завтра может просто не заметить или сгенерить эксцепшн.

    • @aleksey86rus13
      @aleksey86rus13 4 года назад

      а thread join мы считаем ожидаением освобождения какогото мьютекса?

  • @baatrmandzhiev3214
    @baatrmandzhiev3214 3 года назад +3

    Тихо очень. На улице не слышно

  • @MaximMerz
    @MaximMerz 4 года назад +2

    У ссылки есть адрес.

    • @ruslankostiuk1475
      @ruslankostiuk1475 4 года назад

      Раз она работает на основе указателя, значит его адрес где-то есть. Думаю, автор имел ввиду, что его нельзя получить

    • @MaximMerz
      @MaximMerz 4 года назад +2

      @@ruslankostiuk1475 даже в этом случае автор ошибся. Адрес получить возможно.

    • @ruslankostiuk1475
      @ruslankostiuk1475 4 года назад

      @@MaximMerz Как тогда получить адрес ссылки, если операция & вернет адрес переменной, на которую ссылается ссылка?

    • @MaximMerz
      @MaximMerz 4 года назад +2

      @@ruslankostiuk1475 у ссылки будет адрес объекта, на который она указывает. То есть можно сказать, что у неё нет собственного адреса. Но разыменовать её никто не запрещает.

  • @RomanUnreal
    @RomanUnreal 2 года назад +3

    Авто указатель зло)

    • @vladimir_balun_programming
      @vladimir_balun_programming  2 года назад

      Именно по/тому его в 11 задепрекейтили, а в 17 удалили

  • @feewre
    @feewre 4 года назад +4

    - std::map реализован на основе красно-чёрного дерева...
    Чего? Очень много неразборчивых слов

    • @vladimir_balun_programming
      @vladimir_balun_programming  4 года назад +7

      Многие видео основы на том, что у зрителя уже есть определенный "background".
      Если у кого-то есть определенные желание в плане разбора какой-либо темы, то об этом всем лучше писать в комментариях, и тогда я возможно сделаю отдельный видео урок по этой теме...

    • @PRiKoL1ST1
      @PRiKoL1ST1 4 года назад +5

      Правильнее бы говорить что чаще всего реализован, стандарт не указывает какая должна быть реализация.

    • @ГлебГлубина
      @ГлебГлубина 3 года назад

      а шо не так?

  • @прокрастинатор-я8в
    @прокрастинатор-я8в 3 месяца назад

    по шаблонам в 24 году александреску читать не надо

  • @m110h1986
    @m110h1986 4 года назад +4

    для подготовки к собеседованию неплохо помогает курс Клейнера ruclips.net/video/vAhym71Sots/видео.html

  • @FroL_Onn
    @FroL_Onn 3 года назад +2

    Для дедлока достаточно одного мьютекса, который ты забыл разлочить.

    • @vladimir_balun_programming
      @vladimir_balun_programming  Год назад

      Тот поток, который забыл разлочить - пошел дальше заниматься своими делами, а не заблокировался

    • @FroL_Onn
      @FroL_Onn Год назад

      @@vladimir_balun_programming не понимаю к чему это. Задедлочиться можно одним мьютексом. В видео говорится, что 2.

  • @serj2211
    @serj2211 3 года назад

    set это тоже дерево, и оно тоже упорядоченное, просто в отличии от map не хранит пару ключ значение. так что ответ будет - одинаковое

  • @PRiKoL1ST1
    @PRiKoL1ST1 4 года назад +3

    Литкод надо решать, а не язык дрючить!

    • @vladimir_balun_programming
      @vladimir_balun_programming  4 года назад

      Согласен, но это видео не об этом, есть же компании в которых алгоритмы и задачки обговриваются только устно...

    • @HelloWorld-sy4yc
      @HelloWorld-sy4yc 3 года назад

      Codeforces.com лучше

  • @mihax56
    @mihax56 3 года назад +1

    все эти вопросы задают на собеседовании джуна, к вопросам на собеседовании "программистов постарше" это не имеет никакого отношения.

    • @sergeyinozemcev1070
      @sergeyinozemcev1070 3 года назад +1

      За программистов постарше все говорит их гитхаб и резюме и их не ищут через холодные собеседования.

    • @mihax56
      @mihax56 3 года назад +1

      @@sergeyinozemcev1070 когда подрастешь и станешь постарше, тогда поймешь, какую хуиту ты тут написал.

    • @sergeyinozemcev1070
      @sergeyinozemcev1070 3 года назад +4

      @@mihax56 Ты выебываешься на пустом месте. Ничего сверхъестественного не требуют в том числе и от сеньеров. Везде есть специализация и она приходит с опытом. Знать всего невозможно. Но для того чтобы быть занятым в конкретной области вышеперечисленных знаний вполне достаточно. Всему остальному научат. Тебе все равно не доверят с улицы сразу решать архитектурные задачи, так что будешь сидеть и писать ровно то что требует манифест.

    • @vladimir_balun_programming
      @vladimir_balun_programming  Год назад

      Не согласен

  • @futured_it
    @futured_it 4 года назад

    Ответь на коммент под видео: ruclips.net/video/74ZoM656uHE/видео.html

  • @АлексейЛойко-ы3в
    @АлексейЛойко-ы3в 4 года назад

    ссылка это тип данных и отсюда куча различий с унарной операцией "*", а не синтаксический сахар....

    • @vladimir_balun_programming
      @vladimir_balun_programming  3 года назад +1

      Ссылка - это по сути тот же автоматически-разыменнованный указатель, поэтому и говорю, что синтаксический сахар... Тип, конечно же, у них будет разный

  • @robbarret9568
    @robbarret9568 Год назад

    Нафиг они сейчас никому не нужны

    • @mal1n778
      @mal1n778 Год назад

      Почему это?

    • @vladimir_balun_programming
      @vladimir_balun_programming  Год назад

      Кто не нужен?

    • @mal1n778
      @mal1n778 Год назад +1

      @@vladimir_balun_programming походу он про то, что с++ разработчики уже не нужны, хз почему, странный он