Mock-собеседование С++ разработчика из Яндекс | Самое полное интервью

preview_player
Показать описание

Консультации:

00:00 - Введение
00:10 - Запрет создания объектов в куче в С++
01:52 - Ограничение кол-ва создаваемых объектов в С++
04:47 - Перегрузка операторов в С++
06:13 - Взаимодействие С и С++
11:42 - Строки в С++
15:31 - Исключения в С++
17:18 - Исключение в конструкторе и деструкторе в С++
21:21 - Проброс исключения из другого потока в С++
22:34 - Умные указатели в С++
25:38 - Утечки памяти с умными указателями в С++
29:09 - Контейнеры в С++
32:15 - Заключение

Собеседование С++. Собеседование С++ Junior. Собеседование С++ Middle. Собеседование С++ Senior. Реальное собеседование С++. Яндекс. Яндекс собеседование. Умные указатели. Многопоточное программирование С++.

#cpp #собеседование #собеседованиенаработу #яндекс #программирование #программированиедляначинающих #программированиеснуля
Рекомендации по теме
Комментарии
Автор

Очень понравился собес, кучу новых интересных тонкостей языка открыл после просмотра данного видео ролика. Жаль, что автор канала перешел на Go и теперь C++ не является его основным языком при разработке. Жду еще подобного контента, было бы очень интересно продолжение такого формата!

Cprz
Автор

Видео показывает, что ты можешь не помнить все тонкости языка, главное уметь быстро находить нужную информацию

kadzikag
Автор

Супер!!Вопросы интересные Жду ещё таких видео

msgtv
Автор

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

nmg_prm
Автор

По-моему для стажёров / джунов обычно посложнее вопросы дают)
Ну или примерно такие же

_just_a_man
Автор

В вопросе про утечки в умных указателях на 27:46 ответ не совсем верный. Начиная со стандарта с++17 и версий компиляторов его поддерживающих гарантируется, что создание аргументов не будет пересекаться между собой, т.е. код вида foo(<smth_throws>, unique_ptr<int>(new int(42))) отработает верно и утечки не произойдет. Если вопрос был понят не верно, то поправьте.

agordov
Автор

Любая проблема решается созданием фабрики :)

ДенисКолчев-щс
Автор

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

s.g.
Автор

1:47 Может лучше сделать все 4 оператора "удалеными" функциями? Просто тогда компилятор скажет, что нельзя их вызвать, так как они были удалены.

leon_gothier
Автор

27:25 кажется после С++17 порядок передачи аргументов в функцию соответсвует порядку визова аргументов)) потому описаное условие работает до с++17

vovadenys
Автор

Вижу вы отвечаете всем, есть опыт в программировании но маленький, заработал достаточно денег чтобы не работать год, хочу потратить на изучение C++, в реддите узнал что препода Abdul Bari, его очень много кто посоветовал, что стоит учить первее, алгоритмы и структуры данных с С и С++ или С++ для новичков до advanced
? с меня лайк и подписка

kurmanbekkanybekov
Автор

Здравствуйте, Владимир! На 21:08 вы говорите, что есть функция проверки в std, летит ли исключение. Не смог разобрать на слух, вы не могли бы написать ее название, если не трудно?

alex-peretz
Автор

На первый вопрос можно ответить - сделать кастомный аллокатор без NEW()? А второй - переопределить shared_ptr - мы же внутри его ссылки считаем. И без всяких фабрик (зачем излишнюю зависимость вводить?).

gontnetwork
Автор

Спасибо за видео. Это на Джуна или Миддл? Какие результаты?

alexeyfadieiev
Автор

А на какой уровень вопросы +/-? Изучаю по толмуду Страуструпа, хотелось бы понять я совсем дно или нет. Первые вопросы даже быстрее интервьюируемого сообразил, + вроде на последний по хэш-таблице нормально ответил. А вот уже с исключениями и на вопросе про "дружбу" С и С++ просел, прям совсем базу знаю.

pangeo
Автор

Можно попотробнее на счет умных указатлей?
"Если мы создаем через make_shared, то МЫ удаляемся, когда оба счетчика 0". МЫ это кто? Сам объект? Проверил на нескольких компиляторах, обект удаляется всегда, когда счетчик ссылок на шаред = 0, даже если weak_ptr еще существует

ИльяКрислов
Автор

тэги на времянке "Взаимодействие С и С" )))

ArtemMaximov-inzw
Автор

ничего непонятно но очень интересно ))

vitalymaslov
Автор

Видно, что люди понимают друг друга с полуслова. Но у меня масса вопросов. Например exception 1/0 divide by zerro надо обрабатывать через SEH, так как его кидает не конструкция throw, а сам процессор. Так же не поднят вопрос checked arithmetics, который к несчатью отсутсвует в cpp на уровене компилятора.

alzKfArQ
Автор

Ребят, вот так чисто со стороны. У интервьюера очень простые по своему функционалу вопросы, но очень через жопу и долгим образом все это реализуется. Я понимаю, что это техсобес, но вам потом самим не надоедает от того, что вместо того, чтобы просто сначала написать в комментарии к классу, что не надо делать больше 5 экземпляров, а потом если кто-то взял, да и сделал, в дополнение к комментарию сделать счетчик с ассертом, если это не помогло и нашелся человек, которого это не устроило думать дальше, насчет фабрик и так далее, человек начнет заниматься нудятиной типа перегрузки операторов, фабрику фабрик делать и прочее.

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

Korrmet