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

Расскажите о основных различиях C++ и C#. Какие преимущества и недостатки у C#?

Интересуюсь потому, что на рынке C# сейчас куда более востребован, чем C++. Хотелось бы узнать о его отличительных чертах, а так же о том, сложно ли переходить на него с плюсов? И еще один момент, хотелось бы знать в каких сферах чаще всего применяется шарп. Особенно интересует сфера геймдева.
На C# писать легче и приложения разрабатываются быстрее, а ошибок в них меньше, так как большее внимание уделено надежности программ (например, есть автоматическая сборка мусора, исключены или заменены на другие слишком запутанные и чреватые ошибками средства C++ вроде множественного наследования) . Однако исполняются они в среде .NET, то есть через промежуточную, хотя и быструю, интерпретацию, что заметно замедляет их работу. Поэтому для игр предпочтительнее C++, который наряду с компиляцией в промежуточный байт-код имеет также возможность компиляции прямо в машинный код. Кроме того, C++, в отличие от C#, многоплатформенный, то есть на нем программируют не только для Windows.
Муртазали Дадаев
Муртазали Дадаев
87 398
Лучший ответ
Сам по себе язык ближе к Java, чем к C++. Нзавание C## чисто маркетинговое. Считалось, что программирование под C++ -это мастерство высшего пилотажа, поэтому была придумана такая завлекуха, как шарп.

Для реализации шарп-проекта были перетянуты лучшие программисты из компаний конкурентов. Благодаря мощи микрософта удалось довести до ума разработки, которые велись в мною либимой и уважамой фирме Borland. Перескочить с Delphi на .net и шарп большого труда не составляет. Парадигма контролов стала откровенно борландовской, и, о чюдо - не глючит почти никогда. Делигаты в шарпе (deligates) - это продолжение идеи closhure указателей в борландовском C++ builder-е.

А вобще-то, С## не конец. Когда интересно ворочать большими и сложными алгоритмами с числами, то F## замечательная платформа. Вот этим меня микрософт убил окончательно. Простые F## программы летают замечательно. Хочется испытать эти мускулы в решении более сложных задач.

PS/ О геймерстве под шарпом говорить рановато. Под Linux есть среда исполнения . net приложений (Mono), но без продвинутой графики. MS не разрешает копирайтом.
C# под платформу .NET и катит больше для офисных приложений, для более быстрой и удобной разработки. В игрушках больше С++ нужен.
У языков только синтаксис общий.