А можно пояснительную бригаду на 36:17 с какого перепугу на месте "int I = fod(X)" будет вызван N::foo, а не ::foo ? Мы ведь не в пространстве имен N и не должны видеть эту функцию
я могу ошибаться, но по порядку ADL вроде как работает сначала с пространством аргумента, потом с обрамляющим пространством, и только потом с глобальным. Т.е. по приоритету разрешение перегрузки сначала найдёт полностью подходящую функцию в пространстве аргумента, т.е. N::foo. Но это не точно (сорян, я тоже нуб в с++)
Учился у преподши, которая считала, что у нее на экзамене по матану 5 получить не может никто, 4-ку должен получить только один студент из группы, сколько то там троёк на группу (не помню уже, две или три), а остальные на пересдачу, а там такие же правила....
В очередной раз убеждаешься, что с++ хоть и мощный язык, но сделан через одно место (жопу, есть хотите уточнений) сначала придумывают странные конструкции, затем в следующих версиях стандартов героически борятся с их проблемами и в итоге язык обрастает кучей очень запутанных правил и исключений😢
Легенда
10 месяцев?
4 часа?
7 секунд?
Всегда.
Спасибо за видео, Константин как всегда хорош!
захватывающее видео. потому как автор любит своё дело и разбирается в нём.
Так увлечённо, только он рассказывает.
кажется автор задумал написать свой компилятор 🤔
А можно пояснительную бригаду на 36:17 с какого перепугу на месте "int I = fod(X)" будет вызван N::foo, а не ::foo ? Мы ведь не в пространстве имен N и не должны видеть эту функцию
я могу ошибаться, но по порядку ADL вроде как работает сначала с пространством аргумента, потом с обрамляющим пространством, и только потом с глобальным. Т.е. по приоритету разрешение перегрузки сначала найдёт полностью подходящую функцию в пространстве аргумента, т.е. N::foo. Но это не точно (сорян, я тоже нуб в с++)
::foo не подходит по типу аргумента, поэтому начнётся ADL
X типа N::S в namespace N, поэтому N::foo попадает в overload set
@@АлексейКутасов-п7и как это работает можно догадаться, но на кой чёрт это так работает?
@@milbrus735 чтобы работал hello world
std::operator
попробуйте этот код в кодболте.
1:14
А все остальные получили неуд))
Учился у преподши, которая считала, что у нее на экзамене по матану 5 получить не может никто, 4-ку должен получить только один студент из группы, сколько то там троёк на группу (не помню уже, две или три), а остальные на пересдачу, а там такие же правила....
И на грамматиках ИИ ничего бы не понимал потому что язык - это лишь средство выражения мысли, инструмент, а не сама мысль.
В очередной раз убеждаешься, что с++ хоть и мощный язык, но сделан через одно место (жопу, есть хотите уточнений) сначала придумывают странные конструкции, затем в следующих версиях стандартов героически борятся с их проблемами и в итоге язык обрастает кучей очень запутанных правил и исключений😢
осилить с++ могут не только лишь все
могу порекомендовать раст, там все хорошо и таких проблем нет
++ иногда хочется спросить, о чем они думали, когда это вводили
разбудите меня когда с С++ все станет хорошо, а до того не трогайте меня вообще!
а в каком языке все хорошо?
@@WaldemarB-wj1nqДа, кстати
@@WaldemarB-wj1nq, в асемблере - там все прекрасно)
@@WaldemarB-wj1nqпайтон
одну 3, остальные колы и пары
си плас плас 🤠кавбой
завидую людям которые в этой теме, как рыба в воде..