ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Четверг
21 ноября
965825 Топик полностью
Связанные сообщения
CppMetaprogramming
Мнится мне, что кто-то уже записывал такие мысли на песках Сахары...2024-06-19
Вы просто не умеете его готовить. Я бы мог бесконечно показывать примеры, но это непробиваемо. Сразу авторитетно докажут, что у ...2022-09-30
Embedded Template Library (iar arm 9.20.4)2022-05-18
Наброшу.2021-12-06
В C++ доступна вся C-библиотека. Когда C++ сам себе разумеется нет, а как ты себе представляешь? Можешь написать свою реализацию...2020-09-23
Ты хочешь static_if, которого в C++ в чистом виде нет. constexpr if это совсем не то, т.к. он неизбежно будет компилиров...2020-07-02
В общем случае может быть 2-3 подхода перечисленных ниже. В базе всегда SFINAE -- шаблон откидывается и просматриваются следующи...2020-07-02
Надо понимать, что класс -- это не структура. Применительно к C++ мне больше нравится слово тип. Тип -- это сущность существующа...2020-04-26
Я говорю про другую типизацию. Не про int или long, и даже не про int или char*. Программа на ООП-языке существует в рамкой неко...2019-12-19
С языком очень даже связано. Компилирующие языки со статической типизацией (C++, C#, Java, C, Pascal) пропускают гораздо меньше ...2019-12-17
Не совсем. C++ -- это уход в сторону _типизированных_ ЯВУ, а Java или C# -- подвижка в сторону "управляемого кода" и что наиболе...2019-11-03
Да конечно, ну вот расскажи, как оно работает -->2019-10-25
Мне какой-то куб для Renesas вспомнился, лет 6 тому назад. Они хвалились, что у них код компилится сразу, как его пишешь. В итог...2019-10-25
Увы, часто нет. Ардуины не просто так возникли. МК подросли и стали возможны другие подходы к разработке. Видно же что делается:...2019-03-03
Не соглашусь, во-первых я чётко подвёл к мысли, что возможны разные классификации, существование одних не запрещает другие. И ес...2019-03-03
С этого стоило и начинать. С того, что язык скриптовый. И это уводит совсем в другую сторону, практически в параллельную вселенн...2019-03-01
[Язык Forth] сводный системный топик.2018-01-22
EvgenyCD! Смотри ссылку! Я понял, что это круче чем swig, например, в определённых обстоятельствах. Правда руки применять надо...2017-02-09
fk0, легенда (19.12.2019 00:18, просмотров: 895) ответил RxTx на В некоторых тусовках "Крестами" называют C++. Программистов C++ - крестоёбами.
C#, Java и тем более Javascript -- это совсем другой код, нежели C++. На порядок менее оптимальный, если конечно задача не сводится к тому, что подёргать за уже имеющиеся API (сделанные на C/C++). C++ позволяет статический полиморфизм и вычисления во время компиляции. Остальные обычно довольствуются только и исключительно рантаймом. Может быть что-то есть у Java, отдельные оптимизации, я не знаю, но в целом скорей нет -- просто в языках нет механизмов для того. В Javascript вообще толком "объектной системы" нет, как и во многих языках с динамической типизацией. Сравнение с языками с динамической типизацией не корректно. На последних затруднительно создание сколько-нибудь надёжного кода (невозможен ни статический анализ, ни верификация во время компиляции). Не даром микрософт родил Typescript. Эффективный кодогенератор не в вакууме работает. В рамках голого C, конечно, стремиться уже особо некуда. Но в C++ идея в том, что вначале C++ сгенерирует более эффективный код для C с классами, который уже обычными способами оптимизируется, не лучше и не хуже чем у Java, например. Но первого этапа, генерации кода по заданным программистам правилам (метапрограммирование) -- в Java/C# нет. Статический полиморфизм и, следовательно, сразу генерация именно нужного в данном месте кода -- невозможен. Везде неэффективные "обобщённые" решения. Для POD-типов везде есть исключения, но ввести свой тип и эффективно работать с ним невозможно. В C# например, любой более-менее сложный класс (не структура) может размещаться только на куче, но не на стеке -- о чём ещё говорить. Мне иногда кажется, что C#/Java -- это такие специально ограниченные языки для, условно, негров. С которыми шаг влево-вправо -- и нужна большая корпорация (Оракл или Микрософт), без позволения которой ничего невозможно. Собственно основной затык это "рантайм" (почему Java/C# нет в embedded). С C/C++ -- это не так, на C/C++ можно делать что угодно. "Крестоёбы" которые изучали C++ последние 20 лет хотя бы могут не относить на помойку уже накопленные знания, а использовать их дальше. А изучающие технологии им. Микрософта каждые 5-10 лет вынуждены всё выкинуть, оказаться у разбитого корыта, и начать заново. Так что не самый худший вариант. И да стандартные библиотеки C/C++ и Posix API вполне обозримы. В отличии от микрософтовских API (где тысячи дублирующихся функций и классов).
[ZX]