C - подмножество C++
C - подмножество Objective-C
Objective C - подмножество Objective C++
C++ -подмножество Objective C++
Считайте проще. Яблоко (или NextStep, не суть важно) чуток расширило языки C и C++ некими дикими на вид SmallTalk-подобными конструкциями. Нужны они для того, чтобы дергать яблочный API (он тоже пришел из NextStep вместе с Джобсом)
Ну и понятное дело, что всякие примеры кода от Яблока тоже изобилуют этими SmallTalk-подобными констукциями, даже если оно не особо нужно. И многие программисты приняли такой подход за правила хорошего тона. Обычное дело.
Выглядит это настолько страшно, что Яблоко придумало Swift. Хотя когда-то в древности SmallTalk был крутым. Просто NextStep на пару десятков лет обогнал всю индустрию. Во многом поэтому и загнулся, но созданное там добро не было потеряно.
Вебом мы тоже отчасти обязаны NextStep-у.
Другие языки программирования и технологии
чем отличаются между собой С С++ и Obj C ?
Адам Алмазов
причем тут Apple ?
Грубо.
В С нет классов в принципе. он построен на функциях.
Си_с_классами - начальная ступень введения классов.
С++ уже полностью с объектами и классами (включает в себя С, но многое из С не рекомендуется как устаревшее. Да и идеология совершенно другая) .
Оbjectiv-C - Промежуточная ветка в реализации конкретной фирмы идущая на грани"С","Си_с_классами" и "С++"
В С нет классов в принципе. он построен на функциях.
Си_с_классами - начальная ступень введения классов.
С++ уже полностью с объектами и классами (включает в себя С, но многое из С не рекомендуется как устаревшее. Да и идеология совершенно другая) .
Оbjectiv-C - Промежуточная ветка в реализации конкретной фирмы идущая на грани"С","Си_с_классами" и "С++"
Под виндой (как наверно и по другими десктопными ОСями, а не на МК и т. п. ) Си и C++ отличаются мало. Нужды терпеть неудобства Си при разработке под какой-нибудь WinAPI нет.
Может быть, под виндой Си имеет смысл в виде вставок в код на C++ и C++/CLI для скорости (так же как и ассемблер) и как гарант независимости от сторонних библиотек (полагаю, проекты на чистом Си Visual Studio не привязывает к VC++ Redist по умолчанию) . Ни в том ни в другом не уверен.
Может быть, под виндой Си имеет смысл в виде вставок в код на C++ и C++/CLI для скорости (так же как и ассемблер) и как гарант независимости от сторонних библиотек (полагаю, проекты на чистом Си Visual Studio не привязывает к VC++ Redist по умолчанию) . Ни в том ни в другом не уверен.
Руся Ак - 9
хи-хи!
"Си и C++ отличаются мало"
попробуй в "С" использовать понятие "класс" которого там вообще нет))
"Си и C++ отличаются мало"
попробуй в "С" использовать понятие "класс" которого там вообще нет))
Похожие вопросы
- Что оптимальнее: a -= b или a = a - b ? [obj c]
- Чем отличается коренным образом класс от структуры в c#
- Assembler помогите создать файлы *.obj *.exe
- Зачем нужны классы, если можно вот так: (*obj.getSomething)(&obj) ?
- Чем же отличаются C C++ и C# от друг друга
- Чем отличаются между собой C, C# и C++ ?
- pascal и c++. Как сильно и чем паскаль отличается от C++? Какой компилятор самый удобный для C++?
- Чем отличается C# от С и C++
- C# - это объектно ориентировочный язык программирования? Чем он отличается от C++? Для каких ОС его лучше использовать?
- Чем отличается Java от C# по.. . назначению? Что такого можно писать в Java, чего нельзя в C# и наоборот?