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

Подскажите пожалуйста, различаются ли языки С++ и С#?

если да то чем и какой язык новее и включает в себя больше функций нежели другой?
С это подмножество С++. То есть изучив С++ вы должны без проблем понимать С.

Грубо говоря С++ это улучшение С (оттуда и два плюса) приносящее объектно-ориентированное программирование, перегрузку, виртуальные функции, потоки, ссылки (&),несколько видов определения типа (включая на лету) , динамическое выделение памяти.
Из минусов можно отметить уменьшение читабельности кода и как следствие нововведений б'ольшую потребность в ресурсах для тех же алгоримов, но реализованных на С.

Тем не менее язык С/С++ это язык уникальный - среднего уровня. Он сочетает высокую скорость выполнения, возможность работы с ассемблером и работу с аппаратурой на прямую, при значительно меньшей сложности чем программирование на ассемблере напрямик. Как недостаток нужно немного больше понимать, чтобы уметь (не во вред) распоряжаться этой силой)

C и C++ созданы в основном для работы на системах UNIX и отличаются высокой переносимостью кода. Эти языки наряду с ассемблером - идеально подходят для создания скоростных, комплексных программ и многие операционные системы (включая линукс и венду) , комплексные программы и сложные 3Д движки написаны НА НИХ.

С имеет смысл просмотреть после изучения С++ -а именно его последний стандарт С99. С до сих пор широко распространен. Только не среди вендовых псевдопрограммеров.

С# он же С Sharp это язык созданный мелкософтом и >ничего общего с предыдущими (за исключением схожего синтаксиса) не имеет<. Он, подобно Java, интерпретируется с помощью MSIL и без него нигде не работоспособен. Он не поддерживает многие -опасные- функции, имеет свой сборщик мусора и напоминает скорее visual basic. Его сфера - написание относительно простых --при-ложений- для венды и на платформах на которых венда работает (или существует порт интерпретатора) , преимущественно использующих работу с интерфейсом, диалогами, логическими операциями итд. Delphi это еще один схожий язык от Sybase.

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

Из личного опыта это и приводит к тому что многие программы, созданные на С#, не просто уступают в функциональности к С/С++ но и намного примитивнее и ошибочнее. Виновата ЛЕНЬ авторов, не желание изучать и улучшать - такова цена "прогресса". С/С++ буквально закаливает - показывает в человеке все его ошибки, где С# сам их находит и пытается замять (например memory leaks. Но конечно всему есть пределы) .

Еще раз - удел С# быстрое создание прикладных программ в среде win32/64, не более.

К слову MSIL и VisualStudio.NET написаны на С++.

Википедия (особено английская) имеет шикарные статьи по этим языкам, туда я вас и направляю.)
Иван Выходцев
Иван Выходцев
3 000
Лучший ответ
Эдуард Закиров Благодарю мистер SoVa) помогли
Alik Gavrilov Что такое "комплексные программы"?
"Каждый кулик свое болото хвалит". Видно, что текст написан программистом на C++, который не знает C# и не понимает его преимуществ.
C# новее. Отличия перечислять не буду, это бессмысленно: если не знаешь ни один язык программирования, всё равно ничего не поймёшь.
С++ используется для системного программирования и для программ, где важно максимальное быстродействие. Большинство игр написаны на С++.
C# гораздо удобней для создания прикладных программ. По назначению и внутреннему устройству C# близок к Java. Преимущество Java - работает на всех платформах, а C# только на Windows (для Linux тоже есть реализация, но вроде она не полностью совместима). C# мощней и удобней, чем Java.
Alik Gavrilov
Alik Gavrilov
36 282
Павел Баландин Исчерпывающе... :)

Похожие вопросы