1) Если не знаешь C читаешь сначала его. Ты должен освоить его досконально прежде чем браться за C++. Читаешь книгу отцов основателей Дениса Ричи и Брайана Кернигана "Язык программирования С". Ее и только ее. Найти ее можно в том числе и в электронном виде. 2) Только после этого читаешь книгу отца основателя C++ Бьерна Страуструпа. Название точно не помню но вроде как "Язык программирования С++". Издание нужно брать ТОЛЬКО четвертое, переработанное. 3) Читаешь конференции по программированию на C/C++ 4) Пользуешься ТОЛЬКО ПРАВИЛЬНЫМИ компиляторами уважающими СТАНДАРТ ANSI C/ANSI C++ (под linux - gcc, под масдай mingw/cygwin) 5) Изучаешь linux изнутри, пишешь программы на благо себе и всему сообществу, помогаешь советом тому кто спрашивает о C++ в форуме :)
1) C и С++ - два абосолютно разных языка с похожим синтасисом. Знание С при изучении С++ не помогает, а вредит.
2) Книги Страуструпа отличаются редкой невнятностью изложения. Учить С++ с нуля по ним невозможно. Почему ты думаешь, что четвертая будет чем то отличаться?
1) >>C и С++ - два абосолютно разных языка с похожим синтасисом. Знание С >>при изучении С++ не помогает, а вредит. Тебе я вижу не вредит - так говорить может только человек не знающий C и C++. Я поверь их знаю.
2) >>Книги Страуструпа отличаются редкой невнятностью изложения. >>Учить С++ с нуля по ним невозможно. Тебе вероятно да. Конечно лучше читать не книгу создателя C++ а скажем журнал мурзилка !
>>Почему ты думаешь, что четвертая будет чем то отличаться? Потому что я знаю.
4) >>mingw/cygwin == gcc. Где я говорил обратное ?!!
5) >>Знание linux и знание C++ - вещи независимые. Да ?! Ты открыл мне глаза ! Будь моим гуру !
>>Раз Страуструп не подходит что читать?
Подходит, более того читать нужно именно то и именно в той последовательности как я сказал выше. Впрочем если твоя цель не в том чтобы изучить C/C++ - можешь читать что угодно и как угодно :) Я сказал тебе как нужно делать - решать тебе :)))
Смотри в сторону "Thinking in C++" by Bruce Eckel. Есть в инете поищи на google, правда только надо парле англе. А потом уже можно за Страуструпа браться с более менее соображением о предмете. Я вообще Страуструпа только как справочник для разрешения сомнительных моментов использую.
> Неверю (c). Раз ты не знаешь даже отличий между процедурно- и объектно-ориентироваными языками.
C++ объектно-ориентированный язык? Возможно. Хотя, IMHO, это процедурно ориентированный язык, в который в качестве нового типа данных добавлены объекты. Просто структурам добавили новые свойства (можно вместо class написать struct и всё будет работать, только доступ к полям и методам по умолчанию будет другим, public вместо private). Не зря язык сначала хотели назвать "C с классами". Да и буква 'C' в названии не случайно сохранилась.
Важное пояснение: не объектно-ориентированный -- не значит "плохой". Вообще слова "процедурный", "объектный", "функциональный" не являются синонимами слов "хороший" и "плохой". Это я во избежание лишнего флейма :-).
> C и С++ - два абосолютно разных языка с похожим синтасисом. Знание С при изучении С++ не помогает, а вредит.
IMHO, опять же, C++ получен из C добавлением новых свойств. И говорить здесь нужно не о похожем, а о расширенном синтаксисе. Ведь в любой программе на самом нижнем уровне всё равно всё сведётся к простому C.
Впрочем, я догадываюсь, что вы имели в виду, говоря, что знание C вредит (поправьте, если не так). Новые возможности C++ по сравнению с C диктуют новые подходы к решению тех же задач, в плюсах появились новые библиотеки (в основном библиотеки классов, в отличии от библиотек функций в C) и программируя на C++ нужно использовать именно эти возможности. Однако привычка программирования на C (именно привычка а не знание!), заставляет некоторых использовать в C++ старые приёмы, от использования библиотек до построения программы в типично процедурном стиле (например, широкое использование глобальных переменных). Но тут я с вами не согласен. Нельзя уберечь человека от "старых", "неправильных", "вредных" знаний, нужно критически подходить к любому знанию и опыту и понимать, что в новых условия старые знания и приёмы могут не действовать, или, по крайней мере, не являться лучшим решением.
А знание чистого C, IMHO, просто необходимо любому программисту.
> По книге Страуструпа можно лишь худо-бедно запомнить синтаксис.
Охохо 8-)))) А ты её в глаза-то видел? Случайно с ISO на С++ не путаешь?
Книга Страуса - это нехилый такой томик, где все особенности С++ расписаны по полочкам, да ещё и дана куча примеров, как их использовать, как нет, и почему.
Можно реально (и довольно быстро) найти эл. версию в PDF, но только английскую (оригинальную).
стивен прата ``язык с++''. это не пререгруженная (overloaded :) книжка-учебник с примерами и заданиями. очень круто все объясняет. есть STL. а загрузного айра пол -- в отстой. он сам-то ее не читал, небось ;-)