В C ++ вы можете писать код на C и успешно компилировать его в C ++ (в основном).Поэтому, хотя я предполагаю, что ваш термин «беспорядок» является уничижительным и неоднозначным, единственное, что у вас будет, - это то, что вы решите написать сами.Вы можете использовать C ++ как большую сумку для инструментов, не используя все инструменты (или беспорядок, если хотите).
Поэтому ответ это C ++, нравится вам этоили нет.Большинство других C-подобных языков добавляют OO-функции, что, возможно, и является беспорядком, но вы не получаете что-то напрасно и вам необходим синтаксис для поддержки дополнительных функций.К таким языкам относятся:
Из этихC, вероятно, наиболее C-Like, поскольку он является надмножеством C в том смысле, в каком C ++ не совсем.Это также предпочтительный язык для разработки под OSX и iPhone / iPod Touch, который может быть привлекательным.
Java повсеместно распространена, но, вероятно, лучше всего ее описывают как внешне C-подобную.C # имеет ограниченную кроссплатформенную поддержку, но это путь наименьшего сопротивления для разработки Windows GUI с отличными бесплатными инструментами разработки.C # также имеет более простую, но более ограниченную реализацию OO, чем C ++, поэтому может удовлетворить ваши требования, но его сходство с C / C ++ может вводить в заблуждение;он принципиально отличается тем, как он работает аналогично Java.D - это своего рода ниша, разработанная одним автором (хотя и автором некогда известного компилятора Zortech / Symantec C ++).
Что касается "низкого уровня" и "утомительного", когда приступаем к«крупный проект», вы редко начинаете с нуля только с доступной стандартной библиотекой и API ОС, вы используете сторонние и собственные библиотеки для быстрой разработки функциональности более высокого уровня.Тем не менее, подход ОО, как правило, гораздо более поддается такому подходу «повторного использования кода», и, конечно, стандартные библиотеки С ++ и сторонние библиотеки более обширны (не в последнюю очередь потому, что он может использовать как библиотеки С, так и библиотеки С ++).Фактически, я хотел бы предложить, чтобы помимо поддержки форм для ОО, единственное, что делает C ++ более высоким уровнем , - это его расширяемость посредством классов как объектов первого класса.Тем не менее, он остается подходящим языком системного уровня.