Ну дак автор С++ - некто Страуструпп, поэтому господин "Керниган" конечно же не в полной мере знает особенности С++ Макросы и условная компиляция в Си - статична (имею ввиду невозможность изменять условия компиляции во время процесса компиляции). Шаблоны же - это аналог switch-case, только выполняемый во время компиляции, а не во время исполнения кода.
Рабочая группа WG21 удивленно переглянулась. Точнее, переглянулась бы, если бы узнала, что некто MLX90640 на каком-то форуме назвал автором С++ Страуструппа... ("пп", сириоузли?)
(Зрителям: что-то, я смотрю, тут на форуме что ни пост - так повод удивленно переглянуться. Участников форума можно на улице узнавать по перманентно удивленной мине на физиономии?)
Макросы и условная компиляция в Си - статична (имею ввиду невозможность изменять условия компиляции во время процесса компиляции). Шаблоны же - это аналог switch-case, только выполняемый во время компиляции, а не во время исполнения кода.
Лол! "Как два раза сказать одно и то же, но при этом напихать в сказанное лишних слов и оборотов, что не сразу было очевидно, что два раза сказано одно и то же".
Нет. Оба процесса соврешенно одинаково "статичны".
Нет никакой разницы между "генерацией" функций через макросы в С или шаблоны в С++, кроме того, что в С такую генерацию нужно выполнять явно, а в С++ ее можно выполнять как явно, так и неявно. Хотя даже и в "неявном" случае в С++ шаблоны сами по себе не инстанцируются. Триггером инстанцирования шаблона все равно всегда являются явные действия пользователя, напр. использование имени шаблона функции с оператором вызова функции и конкретными типами аргументов.
С++, конечно, предоставляет такие средства как, например, явная специализация шаблонов, которые трудно или невозможно эмулировать через макросы языка С, но это никак не относится к рассматриваемой теме.
Уууу, а случаем, г-н KorbenDallas не является ли родоначальником и С++ тоже, да и вообще, всего сущего на свете, то бишь, богом? А то чето начал распространяться смрад "божественного духа". Интересно, как давно у него продолжаются такие фантазии? хехе
Я смотрю, тут наблюдается ярко выраженный дефицит богов. Каждому встречному и поперечному внезапно предлагают занять вакантное место... "Оставайтесь! Будете Гениальным Механиком Планеты!" (с)
Сорян, котаны... Я бы и сам не прочь, но занят уж больно. Не уговаривайте, чесслово не могу.
Я - один из "создателей языка" Я, правда, один из "создателей языка" С, а не языка С++, но именно в этом качестве в свое время принимал участие в работе С++ комитета.
Ого! Это ж в какой дремучей, беспросветной, темной и сырой подвальной отдушине ютятся эти четверолапые, народ, если бывший участник WG14, отец сишной демократии в их глазах лучезарит божественным сиянием.
Хотя манера мыслить в терминах "таблеточек", как правило указывает на то, что сырая и темная отдушина тут располагается исключительно между ушами, а душит их не лучи чьего-либо сияния, а банальная хвостодраная зависть
Ага, только штош вы, о Великий и Всемогучий, тут то, среди нас, смертных, делаете? "Участник одного, отец другого, создатель третьего". Какие титулы себе еще напишите? А таблеточки то пейте, пейте а то лопните от себявосхваления.
Да, вот как "атец" мог придумать void (пустой), который в реале имеет размерность 1 байт. Указатель на void* указывает на нечто размером 1 байт. Но зато под void* при передаче его в параметрах ф-ции можно подложить любой тип, даже структуру с кучей элементов, а затем явным образом привести void* к требуемому типу, как раз благодаря тому, что void* имеет размер 1 байт.
Ага, только штош вы, о Великий и Всемогучий, тут то, среди нас, смертных, делаете? "Участник одного, отец другого, создатель третьего". Какие титулы себе еще напишите?
Видите, народ: воспаление началось - и затем разрастается как плесень на штукатурке, только быстрее. Титулы придумываются, великость с всемогуществом...
Разумеется, вы все сразу педантично отметили хрестоматийные симптомы "комплекса плебея": индивидуум настолько глубоко считает сам себя куском коровьей лепешки, настолько уверен в том, что с ним рядом в поле никто даже "до ветру" не сядет, что появление где-то поблизости с ним в форуме по С и С++ (!) одного из авторов спецификации языка - явление, кстати, само по себе ничем не примечательное - им воспринимается как пришествие Великого и Всемогущего, как прикосновение к Богу. Всё - его слова.
Я уверен, что вы все это наблюдали не раз, но меня, признаюсь честно, это всегда шокирует: насколько же глубоко в некоторых людях укоренилась дегенеративная манера считать самих себя некоей недоразвитой одноклеточной слизью, что даже самая элементарная компетентность других людей, даже элементарное владение таблицей умножения вызывает у них реакцию в стиле "Ах, ты оказывается реинкарнация самого Пифагора! Что же ты, Великий, делаешь среди нас, недостойных?".
Упоминание "таблеточек" тут вполне уместно и тоже говорит о многом...
---
Компактность, плотность и концентрация информации в болтовне о `void` зашкаливает
1. "void (пустой), который в реале имеет размерность 1 байт" - одна эта фраза содержит в себе описание жизненного пути длиною в боль.
В слегка разбавленной живительной влагой и развернутой форме это выглядит примерно так: "В С и С++ не смыслит вообще ничего, но "лабал на GCC", свято веря, что это заменяет. Как это обычно и бывает с подобными дворовыми самоучками, из GCC поднабрался дерьмеца, но тогда не понимал этого, ибо круг общения состоял из таких же самоучек-потребителей той же жижи. В один прекрасный момент попал в Интернет, где ему детально и довольно жестко кое-что объяснили, то есть посветили фонариком знания в смрад закостенелых домыслов. После третьей-четвертой засветки пришло осознание, вспыхнули зачатки понимания, а с ними вспыхнула и боль. Мучительная - за бесцельно прожитые годы. Боль, из-за которой 1% подобных индивидуумов "убивается головой апстену", 5% берутся за ум и худо-бедно восстанавливают человеческий образ, а оставшиеся 93.999996% уходят в стадию отрицания, проявляющуюся в том числе в периодических выбросах вроде "void (пустой), который в реале имеет размерность 1 байт".
2. "благодаря тому, что void* имеет размер 1 байт." - из каких Упанишад взят этот бред даже я с высоты своего сияющего всемогущества понять не смог
Это не для отца, котятки вы мои пушистые шерстятки, совсем не для отца. Это - для нашего заблудшего сына. Вот прям сейчас как вижу: хорошо зашло, вставило ему так, что аж в звенящую струну вытянуло от носа и до кончика хвоста, словно багет целиком зохавал. Его сейчас такого мягко держит на своих лапах всепоглощающий и всепрощающий, безразмерный и бездонный void...
Не волнуйтесь, он вернется к нам. Надеюсь поумневшим.
Да, слабовато для "создателя языка" Нифпичатлило! ЧСВ распирает, букв дохрена, а реально по делу - нихрена. Так что этот господин - никакой не "создатель языка", а так, просто хвастун и болтун. Я имел ввиду, что указывает void* на первый байт любого массива, структуры или типа, и минимальный размер шага (инкремента) указателя void* - 1 байт. В отличие от этого, инкремент указателя не-void* равен размеру типа, на который он указывает. Понятное дело, что переменная, хранящая адрес void*, будет равна принятой [размерности для любого другого адреса переменной]. Для 32-битной разрядности адрес хранится в 4 байтах.
появление где-то поблизости с ним в форуме по С и С++ (!) одного из авторов спецификации языка -)
Интернет тем и хорош, что можно выдавать себя хоть за наследного принца королевства орков, один фик - всем пофик. Этот "атец" - просто обычный чел, начитавшийся инфы и вдруг придумавший, что оказывается именно он-то и создал этот язык! Ну а че, инет всё стерпит. Потому и отношение к нему такое насмешливое, типа "о, какие тут люди, ай-ай, да как же нам тут повезло". Хотя конечно же это просто сарказм.
Последний раз редактировалось MLX90640 Чт ноя 03, 2022 07:56:59, всего редактировалось 2 раз(а).
да, собственно, меня больше интересует мнение отца о том, насколько логичен тип данных (void это же тип данных?!), для которого нельзя создать переменную? а следом вопрос о том, как отец допустил, что Си - это язык с диким количеством противоречий, решаемых костылями типа "а возьмем и пропишем в стандарте, сделав из костыля или полной дичи норму".
_________________ если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе при взгляде на многих сверху ничего не меняется...
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения