В настоящее время я учусь на ИТ, и мне интересно, что еще важно в C ++ сегодня, для чего он используется? Я закончил базовый курс C ++ в моем университете, но я не представляю, где я могу использовать свои знания и в каком направлении мне следует изучать C ++.
Другими словами, что я должен научиться, чтобы стать успешным программистом C ++?
В настоящее время я изучаю Java только потому, что не понимаю, в какой области C ++ может быть полезен сегодня, но я четко знаю, какую работу я буду выполнять как программист на Java. Но я все еще надеюсь, что C ++ не умер.
Ответы:
Особенностью убийцы C ++ является управление ресурсами с привязкой к области действия , SBRM (более известный как « RAII »). Это единственный промышленный язык программирования, который построен вокруг этой концепции. В C ++ время жизни всех объектов точно известно, и (хорошо написанные) программы на C ++ гарантируют, что ресурсы приобретаются и высвобождаются полностью детерминированным образом. Для сравнения, языки, собираемые мусором или иным образом управляемые, не предоставляют никаких таких гарантий; фактически объекты в этих языках могут сохраняться после окончания их жизни.
Именно поэтому C ++ используется в финансах, видеоиграх, высокопроизводительных встраиваемых системах и системах реального времени, транспорте, производстве и других отраслях, где важны детерминизм и точность. Нет альтернатив.
Конечно, он использовался для гораздо большего количества задач, чем этот, и эти задачи теряются для C # и Python и других более подходящих языков, но это не влияет на его основную нишу.
источник
new
в C ++, называемая размещением. Это позволяет повторно использовать занимаемое в настоящее время пространство памяти. Поэтому, если кто-то хочет избежать (или минимизировать) фрагментацию, он может это сделать теоретически. И предсказуемый не такой же детерминированный.Есть несколько рынков для C и C ++ (на мой взгляд, хотя и ограниченное)
.EXE
файла без какого-либо инсталлятора или чего-либо подобного; для этого нет альтернативы)источник
C ++ все еще очень полезен и ни в коем случае не мертв. Если вы хотите прочитать серьезное сравнение между несколькими разными языками программирования, посмотрите статью Эмпирическое сравнение C, C ++, Java, Perl, Python, Rexx и Tcl . Это не самое актуальное, но я верю, что большинство вещей все еще остается в силе.
источник