Форум программистов, компьютерный форум CyberForum.ru

Где взять учебник, в котором описывается работа с классами - C++

Восстановить пароль Регистрация
 
 
bekabot
1 / 1 / 0
Регистрация: 18.12.2013
Сообщений: 61
04.01.2014, 12:45     Где взять учебник, в котором описывается работа с классами #1
хотел сначала научиться классам, но не знаю как - в ютубе только основа и без продолжения, а мне нужен учебник или что-то в этом роде, чтобы прям от начало и до конца можно было учить классы. Заранее благодарю!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.01.2014, 12:45     Где взять учебник, в котором описывается работа с классами
Посмотрите здесь:

Где скачать нормальный учебник по C/C++ ? C++
C++ Работа с классами
Где в интернете найти толковый учебник по VC++? C++
C++ Где можно найти хороший учебник по C++?
Работа с классами C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
azoller
17 / 17 / 1
Регистрация: 03.05.2013
Сообщений: 114
04.01.2014, 12:46     Где взять учебник, в котором описывается работа с классами #2
Я читал Р.Лафоре "ООП в С++"
S_el
1908 / 1503 / 296
Регистрация: 15.12.2013
Сообщений: 5,920
04.01.2014, 14:25     Где взять учебник, в котором описывается работа с классами #3
Литература C++
Progers
New to C++
 Аватар для Progers
83 / 44 / 5
Регистрация: 14.01.2013
Сообщений: 258
04.01.2014, 14:55     Где взять учебник, в котором описывается работа с классами #4
Цитата Сообщение от azoller Посмотреть сообщение
Я читал Р.Лафоре "ООП в С++"
Да, очень хорошая книга.
Bino321
2 / 2 / 0
Регистрация: 22.11.2013
Сообщений: 31
04.01.2014, 15:37     Где взять учебник, в котором описывается работа с классами #5
Я тоже сейчас читаю Р.Лафоре "ООП в С++". Хорошая книга, в конце каждой главы много задач для тренировок.
До этого читал Либерти "С++ за 21 день" - тоже неплохо все рассказано и описано, но там мало задач для тренировок и закрепления результата. А вообще я по себе заметил что лучче читать несколько книг, тогда остается меньше непонятных моментов.
AllLoveGames
 Аватар для AllLoveGames
1 / 1 / 0
Регистрация: 04.01.2014
Сообщений: 40
04.01.2014, 21:57     Где взять учебник, в котором описывается работа с классами #6
Согласен с Bino321, "Си++ за 21 день" отлично написаная книга, ничего лишнего и все хорошо разъясняется, и опять же соглашусь что следует обращаться не к одному источнику, второй источник для меня обычно гугл))
sergei60
47 / 28 / 4
Регистрация: 10.06.2012
Сообщений: 334
04.01.2014, 23:29     Где взять учебник, в котором описывается работа с классами #7
Я учусь по Оверленд Брайэн С++ без страха. и начинаю заглядывать в Стивен Прата С++ лекции и упражнения.Абсолютно согласен ,что нужна не одна книга и еще нужно живое общение ,будь то форум ,чат,комната,нужен наставник это ускоряет обучение.
halmer
0 / 0 / 0
Регистрация: 04.01.2014
Сообщений: 5
05.01.2014, 00:00     Где взять учебник, в котором описывается работа с классами #8
Прата С. C++ Primer Plus, 6th Edition. Язык программирования C++. Лекции и упражнения (2011)
Читаю эту книгу. Вся ясно и понятно. + есть задачи для закрепления после каждого раздела
Kastaneda
Модератор
Эксперт С++
 Аватар для Kastaneda
4237 / 2770 / 218
Регистрация: 12.12.2009
Сообщений: 7,104
Записей в блоге: 1
Завершенные тесты: 1
05.01.2014, 10:34     Где взять учебник, в котором описывается работа с классами #9
Цитата Сообщение от bekabot Посмотреть сообщение
Где взять учебник, в котором описывается работа с классами
говорят в интернетах есть, попробуй там посмотреть.
Ded_Vasilij
 Аватар для Ded_Vasilij
229 / 211 / 15
Регистрация: 01.09.2012
Сообщений: 2,103
05.01.2014, 11:09     Где взять учебник, в котором описывается работа с классами #10
Цитата Сообщение от Bino321 Посмотреть сообщение
"С++ за 21 день"
Не верю я в эти сказки. С++ невозможно изучить за 21 день. Почитайте Страуструпа "Дизайн и Эволюция С++", а для начала я бы посоветовал почитать Столярова "Введение в язык С++". Про Лафоре тоже ничего хорошего сказать не могу. Если Вы планируете серьезно заниматься программированием - то не советую его читать - ничему хорошему не научит. Для начала вообще желательно прочитать Кернигана, Ритчи "Программирование на С". Я только недавно прочитал, и понял, что я ничего не знал ни про Си, ни, тем более, про С++. Ну а если Вам это нужно ровно для того, чтобы сдать лабы в универе - Лафоре достаточно.

Добавлено через 3 минуты
{ссылка удалена} здесь все учебники, на любой вкус
Бендерродригез
Сгибальщик
 Аватар для Бендерродригез
42 / 42 / 3
Регистрация: 18.05.2013
Сообщений: 220
Завершенные тесты: 1
05.01.2014, 11:22     Где взять учебник, в котором описывается работа с классами #11
Цитата Сообщение от Ded_Vasilij Посмотреть сообщение
Для начала вообще желательно прочитать Кернигана, Ритчи "Программирование на С". Я только недавно прочитал, и понял, что я ничего не знал ни про Си, ни, тем более, про С++.
Многие программисты при разработке встроенных систем предпочитают использовать C, потому что он проще, чем C++, и больше подходит для разработки под аппаратное обеспечение. Действительно ли сложность C++ должна быть камнем преткновения для разработки встроенных систем?


Вовсе нет. Если вы придерживаетесь C-стиля программирования, то C++ окажется ничуть не сложнее C, причем он тоже подходит для разработки под аппаратное обеспечение. И уж точно C++ намного эффективнее, чем C. Я никогда не видел такой программы на C++, которую можно было бы так переписать на C, что у нее будет меньший объем кода, она будет производительней, она будет лучше сопровождаться — в общем, будет эффективнее. Не верю, что такое возможно.

Миф о том, что «C лучше C++», сбивает с толку очень многих начинающих программистов. Так, например, когда они сталкиваются с проблемами, они постоянно пытаются что-то выдумывать и применять совершенно нетривиальные вещи, а не использовать простые и мощные инструменты. В конце концов, у них получается очень сложный и запутанный код, который они в силу своих заблуждений принимают за эталон. Вся эта ситуация меня просто поражает. Если человек берется за что-то, а ему постоянно твердят, что это очень сложно и бесполезно, то у него в итоге ничего и не получится. Единственная вразумительная причина, из-за которой, как я знаю, используют чистый C, а не C++, — это ограниченные возможности конкретной платформы.

Однако студентов и вообще новичков в изучении C++ нельзя винить, потому что их ошибки часто зарождаются в процессе освоения университетского курса программирования. Однажды, лет десять назад, мне довелось вести его у первокурсников. Я заглянул в учебники — и просто поразился: вместо понятных и простых в использовании конструкций C++ в книгах в начале рассматривалась куча разных неочевидных мелочей языка C, а инструменты С++ преподносились как нечто очень сложное. Это не отпугивало только тех, кто хотел серьезно заниматься программированием.

Вот серьезно, скажите: неужели вектора из стандартной библиотеки сложнее массивов из C? Или, например, почему студентов приучают к функции qsort(), хотя sort() и эффективнее, и универсальнее? У C++ более строгая типизация, чем у C, за счет этого объектный код обрабатывается быстрее.

Еще в учебниках часто описывают C++ как провалившуюся попытку создания чистого объектно-ориентированного языка программирования. Такое утверждение как правило иллюстрируется целой простыней кода, в которой практически вся архитектура разбита на запутанную иерархию классов, унаследованных друг от друга. В итоге получается совершенно не характерная для C++ связанность. Такой код напоминает скорее программу на Java, и, что самое печальное, работает он обычно медленно.

Мне тоже не нравится C++ таким, каким его представляют авторы тех учебников. В ответ я написал свою книгу для студентов и самоучек — «Programming: Principles and Practice using C++». Для ее изучения опыт программирования не обязателен, однако она вызвала интерес и среди опытных разработчиков. Только если вам нужен просто обзор C++11, то эта книга будет довольно большой. Для этой цели я порекомендовал бы книгу «A Tour of C++». В ней описаны все ключевые моменты ISO C++ и стандартной библиотеки всего на 180 страницах. Стандарт C++11 полностью поддерживается компиляторами Clang и GCC, частично — Microsoft C++ и многими другими, правда, боюсь, на менее популярных платформах он может выполняться некорректно.

Интервью с Бьерном Страуструпом о языке C++

Взялся за C++, так изучи плюсы, а потом, если уж приспичит, и С.
Ded_Vasilij
 Аватар для Ded_Vasilij
229 / 211 / 15
Регистрация: 01.09.2012
Сообщений: 2,103
05.01.2014, 11:57     Где взять учебник, в котором описывается работа с классами #12
Бендерродригез, я хотел лишь сказать, что для более эффективного изучения С++, необходимо основательно понимать Си, т.к. в нем заложены основы. Понятно, что векторами пользоваться удобнее чем массивами, но, без понимания азов невозможно писать грамотный код. У того же Лафоре на человека вываливается огромный объем информации. А толку? Да, не спорю, учебник красивый, толстый, что-то в нем написано, но только, по-моему, благодаря таким учебникам, а еще методичкам, которые пишут наши "доценты с кандидатами" (не в обиду никому сказано, но авторов некоторых методичек, из тех, что мне попадались на глаза, я бы расстреливал на месте без суда и следствия как НАТО'вских диверсантов) получаются быдлокодеры, которые не могут две матрицы перемножить Перемножение матриц(квадратных) , но при этом с кучей понтов. так как-то.
Бендерродригез
Сгибальщик
 Аватар для Бендерродригез
42 / 42 / 3
Регистрация: 18.05.2013
Сообщений: 220
Завершенные тесты: 1
05.01.2014, 12:05     Где взять учебник, в котором описывается работа с классами #13
Цитата Сообщение от Ded_Vasilij Посмотреть сообщение
Бендерродригез, я хотел лишь сказать, что для более эффективного изучения С++, необходимо основательно понимать Си, т.к. в нем заложены основы. Понятно, что векторами пользоваться удобнее чем массивами, но, без понимания азов невозможно писать грамотный код. У того же Лафоре на человека вываливается огромный объем информации. А толку? Да, не спорю, учебник красивый, толстый, что-то в нем написано, но только, по-моему, благодаря таким учебникам, а еще методичкам, которые пишут наши "доценты с кандидатами" (не в обиду никому сказано, но авторов некоторых методичек, из тех, что мне попадались на глаза, я бы расстреливал на месте без суда и следствия как НАТО'вских шпионов) получаются быдлокодеры, которые не могут две матрицы перемножить Перемножение матриц(квадратных) , но при этом с кучей понтов. так как-то.
Какие такие основы? printf вместо cout? Плюсы - изначально надстройка над С. Что такого можно найти в С, чтобы ВНЕЗАПНО обнаружить это и в С++? Изучая плюсы не обязательно упираться в ООП же, процедурное тоже никуда не денется.
Это уже проблемы обучения, но ни как не самого языка.

Я с тем же успехом могу заявить, что надо сначала изучить ассемблер, ибо это - основы.
Евгений89
 Аватар для Евгений89
99 / 99 / 9
Регистрация: 17.04.2011
Сообщений: 554
Завершенные тесты: 2
05.01.2014, 14:34     Где взять учебник, в котором описывается работа с классами #14
Я бы посоветовал для изучения ООП Страуструпа
AllLoveGames
 Аватар для AllLoveGames
1 / 1 / 0
Регистрация: 04.01.2014
Сообщений: 40
05.01.2014, 16:00     Где взять учебник, в котором описывается работа с классами #15
Цитата Сообщение от Ded_Vasilij Посмотреть сообщение
Не верю я в эти сказки. С++ невозможно изучить за 21 день.
не имеется ввиду что с 0 за 21 день можно стать богом программирования на плюсах, но писать программки которые можно назвать полноценными ООП возможно)) и к тому же всетаки нужно обращаться ко всем возможным источникам, какими бы не были волшебными книги)
AlukardBF
 Аватар для AlukardBF
4 / 4 / 0
Регистрация: 20.08.2013
Сообщений: 24
06.01.2014, 00:49     Где взять учебник, в котором описывается работа с классами #16
О классах довольно подробно рассказывается в книге братьев Дейтелов - "Как программировать на C++".
Kuzia domovenok
 Аватар для Kuzia domovenok
1883 / 1738 / 116
Регистрация: 25.03.2012
Сообщений: 5,907
Записей в блоге: 1
06.01.2014, 01:10     Где взять учебник, в котором описывается работа с классами #17
Цитата Сообщение от Бендерродригез Посмотреть сообщение
Взялся за C++, так изучи плюсы, а потом, если уж приспичит, и С.
ИМХО Страуструпп не прав. Пусть он Hello World для какого-нибудь восьмибитного микроконтроллера напишет так, чтобы программа работала быстрее(не медленнее), чем на Си.

Добавлено через 6 минут
Цитата Сообщение от Бендерродригез Посмотреть сообщение
Какие такие основы? printf вместо cout?
в том числе оно. Для понимания printf достаточно знать тему "функции в Си". Даже ещё лучше использовать puts вместо printf - исчезнут проблемы форматирования строк!

А что такое cout? Уже объект! А из какого namespace'а объект? А какого класса объект? А от чего унаследован этот класс? А когда конструируется этот cout? А что это за оператор <<? А почему оператор сдвига занимается выводом в поток? А что такое перегрузка операторов?
Вопросов возникает на порядок больше, чем в Си. И уж точно эти вопросы не для первого урока!
Бендерродригез
Сгибальщик
 Аватар для Бендерродригез
42 / 42 / 3
Регистрация: 18.05.2013
Сообщений: 220
Завершенные тесты: 1
06.01.2014, 11:02     Где взять учебник, в котором описывается работа с классами #18
Цитата Сообщение от Kuzia domovenok Посмотреть сообщение
ИМХО Страуструпп не прав. Пусть он Hello World для какого-нибудь восьмибитного микроконтроллера напишет так, чтобы программа работала быстрее(не медленнее), чем на Си.
"Единственная вразумительная причина, из-за которой, как я знаю, используют чистый C, а не C++, — это ограниченные возможности конкретной платформы." - он сам об этом говорит. А во-вторых, каждый инструмент надо использовать по назначению.
Цитата Сообщение от Kuzia domovenok Посмотреть сообщение
в том числе оно. Для понимания printf достаточно знать тему "функции в Си". Даже ещё лучше использовать puts вместо printf - исчезнут проблемы форматирования строк!

А что такое cout? Уже объект! А из какого namespace'а объект? А какого класса объект? А от чего унаследован этот класс? А когда конструируется этот cout? А что это за оператор <<? А почему оператор сдвига занимается выводом в поток? А что такое перегрузка операторов?
Вопросов возникает на порядок больше, чем в Си. И уж точно эти вопросы не для первого урока!
У тебя нет никакой последовательности в вопросах. Если изучаешь язык впервые, то таких вопросов просто не возникнет, потому как "что такое namespase" оговаривается после хелловорда сразу же. Необходимость конструктора для объектов изучается когда дело доходит до самих объектов (откуда взяться вопросу-то?). Наследование - и того дальше (а если ты уже знаешь ООП и лезешь с такими вопросами, то учился ты странным кривым способом, который не дал тебе понять, что всё объясняется в своё время). Перегрузка операторов и << - да всё оттуда же. Причём, знание С как раз таки породит недоумение (да и то, если опять же с тем же методом обучения), а вот начинание с чистого листа эти "умные" вопросы просто-напросто отсекает.
И ясен пень, что всё это будет вылито на неокрепший ум не на первой же странице, если автор не идиот. Понял, как отправлять данные в выходной поток? Молодец, как оно работает - позже, а пока что на тебе типы данных и строгая типизация (не то что в С).

И да, повторюсь:
Что такого можно найти в С, чтобы ВНЕЗАПНО обнаружить это и в С++?
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
10.01.2014, 13:52     Где взять учебник, в котором описывается работа с классами #19
Цитата Сообщение от Kuzia domovenok Посмотреть сообщение
Для понимания printf достаточно знать тему "функции в Си".
Для понимания функции printf помимо функций надо знать указатели, эллипсис, правила автоматического приведения типов, а ещё про то, что такое стек и что будет, если он переполнится или если программа попытается обратиться за его пределы. Это по аналогии с вашими рассуждениями по поводу cout. А если описывать cout по аналогии с вашим "Для понимания printf достаточно знать тему "функции в Си"" - то для понимания cout достаточно знать, что чтобы вывести что-то на экран, надо написать std::cout << что-то;
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.01.2014, 17:28     Где взять учебник, в котором описывается работа с классами
Еще ссылки по теме:

Code Blocks компилятор GCC: где найти учебник C++
C++ Разделение проекта на файлы .cpp где полностью описывается один класс
C++ Работа с файлами C++. Где взять теорию для написания курсовой?

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Kuzia domovenok
 Аватар для Kuzia domovenok
1883 / 1738 / 116
Регистрация: 25.03.2012
Сообщений: 5,907
Записей в блоге: 1
10.01.2014, 17:28     Где взять учебник, в котором описывается работа с классами #20
silent_1991, как минимум с таким подходом новичёк будет думать, что << это оператор вывода. Я готов спорить, что больше половины начинающих на первом уроке с таким подходом пишут cout<<"hello", но не знают вообще ни одного оператора в Си.
Кстати аналогия с printf и знанием о стеке неудачна. Боюсь ошибиться, но вроде тема стека не является частью языка Си или С++. (Т.е. в учебниках, документации, хелпе, стандартах её не упоминают и теоретически реализация принтф может быть другой. Просто оговаривается, что передаваемые параметры должны соответствовать форматной строке и всё)
Yandex
Объявления
10.01.2014, 17:28     Где взять учебник, в котором описывается работа с классами
Ответ Создать тему
Опции темы

Текущее время: 03:08. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru