C++ изучать без изучения C предварительного сразу же с STL начиная?
а какие обратные доводы
Это разные языки, вот такой довод
но C++ основан на C
ну недавняя дискуссия про strlen
И что? Куча языков основана на С
А зачем нужно учить Си?
попишешь год на си, а потом будешь структуры друг в друга кастить
чтобы понимать как работает машина
пишу на си намного больше года. Не страдаю такой фигнёй там, где этого не требуется
С как и С++ работает на абстрактной машине
Серьезно?)))
но C наиболее близок к ассемблеру
Да))))))
ну он про синтаксис
ты с java часом не попутал?
Почитай стандарт
Перечисли. Напиши код на С и пробуй откомпилировать на др языке😉👍
откуда взялась абстрактная машина на железке без операционки?
Основана на С = компилирует С код? Как интересно
при чем тут операционка
https://www.youtube.com/watch?v=YnWhqhNdYyk
Ты можешь открыть и почитать что в стандарте написано?
могу, если скажешь где именно открыть. Стандарт С++ - слишком большая книжечка для спонтанного чтения. Да и предназначен он в основном для разработчиков компиляторов.
int main() { register int a = 10; } Валидный код в Си, но не в С++
Речь шла о полной переносимости кода с С на С++? Вы попробуйте то же самое на JAVA и C#)))
Да, шла Не компилируется хотя бы одна программа — значит языки не совместимы
В любом, там везде описание абстрактной песочницы, в которой например rw обращение из разных потоков к переменной это уб, хотя на реальном железе вполне возможно что нет
Не согласен) В этом году эти языки могли стать несовместимыми, но комитет решил иначе!😉👍
Они и так несовместимы, проснись
не то чтобы комитет взял и решил. там есть люди, которым дорога совместимость с си, и они постоянно прикладывают усилия, чтобы не плодить несовместимости просто так
А этот, Джейсон Тернер 10 часов дум с с на с++ переписывал, чтобы хотя-бы компилилось.
Ага, видел! И забавно что как я понял там ещё скорость выполнения повысилась ненамного Просто после исправления ошибок компиляции С++
Из того что мне попалось я так понял, что это что-то вроде некоего упрощения для более простого объяснения некоторых концепций. Под "абстрактной машиной" подразумевается любое устройство, способное исполнять код, хоть наручные часы с микроконтроллером
Ну вот стандарт С описывает абстракцию
Я бросил часу на втором, помню он там где-то вектор вставлял вместо сишного кода
Ну я просто посмотрел summary вроде
Doom3? Он же на плюсах, вроде?
https://github.com/id-Software/DOOM Этот вроде
Посмотрел немного, в общем и целом она рекомендует изучать С++ так как я в начале 2000 изучал Java (по книгам тех же многостаночников Дейтелей): начать с GUI, например, а не со спецификаций printf. Ну или хотя бы со стримов ввода-вывода и std::string. Такой top-down подход и на мой взгляд прагматичный: ну да, стримы могут быть медленнее, но кому будет нужна перформанс тот разберётся, а кому не нужна, хоть что-то накодить сможет. Смущает только, что самый популярный GUI на с++ это Qt, а там с++ говорят своеобразный. Интересно как сейчас учат ту же Java ведь GUI уже не модно, а модно JSONчик там вернуть? В с++ с этим легче гораздо, более востребован для десктопа.
В Qt С++ в виде джавы, если грубо
Обсуждают сегодня