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

C++ VS C# дайте вашу субъективную оценку этим двум языкам, какие плюсы, какие минусы, и есть ли задачи с которыми может

Как ни странно, скорость работы приложения практически никогда не была определяющей в выборе языка. РНР в 80 раз медленнее Delphi. 1С Предприятие 7.7 также в 80 раз медленнее Delphi. Пишу делфи потому что это типичный язык с компиляцией до ассемблера, то есть оперировать переменными уже будет процессор напрямую.

Скорость разработки выше в C#. А у С++ выше совместимость со старым кодом, естественно, написанном на С++.

Есть задачи с которыми может справиться только 1 язык. На C# нету классического ассемблера, следовательно некоторые алгоритмы красиво реализуемые на ассемблере будут не доступны. К примеру, вычисление CRC32 делать на C# крайне не рекомендовано. Работать будет, только скорость ниже в разы. И код распухнет при компиляции. 5 строк на ассемблере против IL кода в 40 строк.
Однако на C++ нету промежуточного языка, нет динамической компиляции. В .NET есть свой ассемблер - язык IL и на нём можно составлять программы на лету. Поддержка ООП на уровне ассемблера это круто.

Вещи типа ADO . NET, ASP . NET не имеют аналогов для win32 программирования. Если вам надо написать сайт то вам нужен C# а не С++. Сфера применения C# увеличивается с каждым годом...
Саша Гладышев
Саша Гладышев
8 358
Лучший ответ
с кросплатформеностью у шарпа будут проблемы
Aslan Tokubaev
Aslan Tokubaev
35 594
Денис Иванов Шарп компилирует в IL, а он платформенно независим. Если же взять С++ то он привязывает приложение не только к платформе, но даже к операционной системе для которой скомпилировано и архитектуре процессора в том числе.
Итог - проги на C# работают в других OS даже без перекомпиляции.
Владимир Хомяк вы писали когда-нибудь кроссплатформенный код на c++?
C++ быстрый но низкоуровневый ООП у него сложнее нужно следить за ошибками. Но удобно писать библиотеки и драйвера.
C# дает большие возможности быстрой разработки что намного сокращает время и ошибки также там есть технологии WPF, wcf, WF, Silverlight, ASP.net и так далее. Работа с БД намного удобнее и проще ADO.net, entity framework.

По мне нужно знать и C++ и C# потому что работы для обоих языков хватает и они пересекаются между собой.
С# БОльше подойдет для создания игр, а с++ подойдет для создания серьезных программ (фотошоп к примеру на нем написан)