Shaman
Ты о GCC ничего не сказал. Наверное не в курсе.
Я читал исходники ;) И решонал его. Он перевёл проект в сишном стиле, чтобы можно было использовать классы и шаблоны. А кто будет всё это переписывать на цппшный стиль? Правильно, никто.
Shaman
Кроме того, никто не возбраняет не использовать классы c++ там где они не нужны
Ты GTK вообще читал? Там ООПшная иерархия на чистом C.
doza_and
И видим: java 1148
Что ж мы на Java не пишем? Меня лично скорость не устраивает, не нравится, что окна долго открываются.
doza_and
В играх лидирует c++ с большим отрывом.
Сейчас игр не делают, на платформы лепят. Да раньше игры килобайтные были интереснее этих терабайтных.
Недавно скачал в стиме team fortress, при распаковке это ~15 гигабайт, а по сути - квейк. Только вот квейк у меня стоял в лине и весил 300 мегов, а это фуфло неинтересное - много-много гигабайт.
doza_and
c 549, python 524.
Все страницы, которые ты тут оправляешь, проходят через nginx. А как nginx стал таким популярным? Да очень просто - он качественный, а не какое-то фуфло на десять гигов.
doza_and
С это подмножество C++ его используют когда нет возможности использовать компилятор C++
C используют тогда, когда C++ нафиг не нужен, и очень часто так и оказывается. Преимущества C++ перед C сильно раздуты и преувеличены. У них и стандарты различаются, например int main() и int main() означают разные вещи. Редко бывает, когда цппшники это знают.
doza_and
Когда исторически сложились сишные интерфейсы и архитектура приложения. Ну и самый частый вариант, когда квалификации разработчиков не хватает для использования С++.
С квалификацией дело обстоит в обратную сторону. Про игры пример привёл. Как так получается, что реально никакая игра (в которой нет ничего) весит несколько гигабайт?
Кстати, Go, который сейчас делают Томпсон и Пайк, удивительно похож на C, но почему-то там даже классов нет, которые как бы везде есть. Оказалось, что классы можно сделать, не делая классы. Но для этого нужно немножко ума.
doza_and
Т.е. если вы начинаете новый проект, и у вас есть компилятор C++ то практически нет причин ограничивать себя подмножеством C.
А зачем мне C++? Да и не скомпилирует он сишный код. У них разные стандарты. К примеру, один и тот же код может не скомпилироваться, потому что в цппшном стандарте кое-чего нет:
int main()
{
void *p = 0;
int *n;
n = p;
n++;
return 0;
}