Другие языки программирования и технологии

Зачем в C++ используют такой неудобный порядок оформления программ?

Программируя на С++ я предпочитаю придерживаться стиля C# или Java(в оформлении программ). В последующем мне разобраться в своём коде не составляет труда. Программирую на C++ на много реже, в основном микроконтроллеры. И все время задают себе вопрос... Зачем в библиотеках C++ используют такой неудобный стиль программирования??? Все заглавными буквами, Дефайны которые по несколько раз переименовывают, кучи подчёркивания что аж в глазах ребит и весь код просто сливается??? Зачем усложнять код???
Варвас Сергей
Варвас Сергей
1 315
Тоже мне сравнили!
Библиотеки C++ и Java/С# существенно различаются по сложности внутренней структуры. Это очевидно хотя бы по тому, что количество компиляторов (с учетом версий) для С++ на порядок больше.

Кроме того, стиль неудобен вам именно потому, что вы редко пишете программы на С++. Эффект "привыкания" к стилю кодирования у вас просто не наступает.
Кроме того стиль написания библиотек ДОЛЖЕН БЫТЬ единым, иначе затруднится читабельность кода. Стиль написания кода C++ сложился настолько давно, что сейчас никто уже и не помнит, что когда-то были утилиты, которые не различали регистр. И написание директив заглавными буквами с подчеркиваниями было ЕДИНСТВЕННЫМ способом решить проблему. Некоторый код библиотек с тех пор просто не менялся, ибо незачем трогать рабочий код.

ЗЫ
Пока вы работает с кодом один, вы можете писать как вам угодно, но когда вас трое и больше, то придерживаться стиля кодирования, который не нравится ВСЕМ - единственно возможный компромисс.
Original Identity
Original Identity
11 112
Лучший ответ
Варвас Сергей Спасибо за разьяснения . В глубине душе я так и думал.)
C# - 2001 год
Java - 1995 год
C++ -1983 год, причем то, на что ты жалуешься, заимствовано из C - 1972 год. Когда 1МБ оперативной памяти был счастьем, недостижимым для обычного программиста. Конечно, концепции за 44 года несколько устарели, идеи, бывшие прорывными тогда, сейчас смотрятся неуклюже, а библиотеки замусоренны старым кодом. Посмотрим, как C# будет в 2045 выглядеть - вернее, даже не C#, а какой-нибудь C##, поддерживающий супер-гипер-концепции 2025 года, но полностью совместимый с C#...
Oybek Atajanov А .NET Ftamework 14.8 будет занимать пару терабайт.
Есть несколько стилей, придерживайся какого то одного.

Для микроконтроллеров - отдельная песня. Это весьма специфичная область. Многие микроконтроллеры имеют всего килобайты памяти.
Вова Дудаков
Вова Дудаков
38 256
Самый умный?! Создай собственные библиотеки тогда! И прости, пожалуйста, что не под тебя разработчики код написали, мистер пуп Земли!
Варвас Сергей А ты здесь самый умный я вижу. Я для себя уже достаточно библиотек написал и на C++ и на C# и Java и разобраться в них мне труда не составляет. А тебе если ответить нечего по теме можешь помолчать. Ты мне выскочку напоминаешь который считает что умнее всех.
Дефайны в библиотеках используется для того, чтобы один и тот же код можно было собирать разными компиляторами, для разного стандарта языка (98/03 или 11), в среде с потоками и без потоков и т. д.

Двойными подчёркиваниями предваряются имена, относящиеся к деталям реализации и имена, зарезервированные самим компилятором (__cplusplus, __attribute__(...), __builtin_…)