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

Помощь новичку - C++

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 23, средняя оценка - 5.00
murod
 Аватар для murod
-2 / 7 / 2
Регистрация: 04.11.2010
Сообщений: 163
23.07.2011, 19:08     Помощь новичку #1
Пожалуйста помогите , я хочу изучить С++, подскажите с чего начать, с какой книги , какой прогой работать ?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.07.2011, 19:08     Помощь новичку
Посмотрите здесь:

Помогите новичку:) C++
Поясните новичку C++
C++ Посоветуйте новичку в С++
Помощь ну уж совсем новичку C++
Подскажите новичку. C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ValeryLaptev
Эксперт C++
1005 / 784 / 46
Регистрация: 30.04.2011
Сообщений: 1,595
24.07.2011, 13:45     Помощь новичку #41
Цитата Сообщение от Deviaphan Посмотреть сообщение
Признаюсь честно, академий я не кончал и этот термин слышу впервые...
Пойду гуглить.

Добавлено через 2 минуты

Ничего подобного. Математические задачки позволяют развивать математическое мышление.
Не всё в программировании связано с математикой. Например, в синтаксическом анализаторе математика нужна только для инкремента итераторов (условно).
В синтаксическом анализаторе математика нужна, чтобы понимать, что такое формальная грамматика, что такое LL- и LR-грамматика, что такое автоматная грамматика и так далее. Что такое множества first и follow... и почему конечный автомат эквивалентен регулярному ваыражению...

Добавлено через 4 минуты
Цитата Сообщение от Deviaphan Посмотреть сообщение
Видимо потому, что множества в stl хранятся в виде бинарного дерева? Нет?
Причем, в виде сбалансированного красно-черного дерева...

Добавлено через 2 минуты
Цитата Сообщение от Asseni Посмотреть сообщение
Я не говорила что в программировании все связано с математикой. Если Вы в своей сфере обходитесь без математики - это просто замечательно!!!

Абсолютно с Вами согласна, как ни крути, а само программирование придумали именно математики!
Более того! Последняя книжка Алекса Степанова "Начала программирования" - как раз о том, как с использованием математики (конкретно - математической логики) писать ПРАВИЛЬНЫЕ и оптимальные программы!
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Kastaneda
Модератор
Эксперт С++
 Аватар для Kastaneda
4236 / 2769 / 218
Регистрация: 12.12.2009
Сообщений: 7,104
Записей в блоге: 1
Завершенные тесты: 1
24.07.2011, 14:06     Помощь новичку #42
Цитата Сообщение от ValeryLaptev Посмотреть сообщение
Последняя книжка Алекса Степанова "Начала программирования" - как раз о том, как с использованием математики (конкретно - математической логики) писать ПРАВИЛЬНЫЕ и оптимальные программы!
Посмотрел содержание, книга действительно не похожа на остальные (с аналогичными названиями), обязательно почитаю на досуге!

Добавлено через 6 минут
ага, почитал... нету ее еще в сети, только отрывками на книжных сайтах посмотреть можно(
CoffeeSamurai
2 / 2 / 0
Регистрация: 04.04.2011
Сообщений: 19
24.07.2011, 14:13     Помощь новичку #43
Цитата Сообщение от murod Посмотреть сообщение
)) На С++ люди создают игры , проги и т.д ,помоему этих знаний не достаточно

Добавлено через 1 минуту
Вы можете мне посоветовать какую нибудь книгу? И на какой проге работать ? я набирал коды в code::blocks
Массивы, строки, структуры и т.п. - это необходимые самые самые АЗЫ. Без них ни графику не запрограммировать, ни бота не написать, и вообще ничего не сделать. Не всё так просто как кажется на первый взгляд. Я могу подсказать книгу, в которой объясняется как программировать игры. К примеру "Искусство программирования игр на С++" Фленова. Скачай её и почитай. Вряд ли ты чего нибудь поймешь, а если и поймёшь то уж точно не сможешь ничего написать.....
И даже выучив эти не обходимые азы, вроде массивов и прочего, этого не хватит для написания игр. Помимо этого ещё надо сам язык С++ учить: ООП. Дальше практика, практика, и практика. И изучив сам язык помимо всего прочего ещё нужно изучать функции графических библиотек и их использование (DiretX, OpenGL). Так что если ты не получаешь удовольствия от программирования вообще (не только игр), то вряд ли только желание написать игру послужит тебе хорошей мотивацией...
Kastaneda
24.07.2011, 14:20
  #44

Не по теме:

Цитата Сообщение от iama Посмотреть сообщение
murod, Фленова читай, если оно вдруг еще чего и по плюсам написало.
Цитата Сообщение от CoffeeSamurai Посмотреть сообщение
К примеру "Искусство программирования игр на С++" Фленова

CoffeeSamurai
2 / 2 / 0
Регистрация: 04.04.2011
Сообщений: 19
24.07.2011, 14:35     Помощь новичку #45
Цитата Сообщение от Kastaneda Посмотреть сообщение

Не по теме:



А что смешного? Это единственная книга про написание игр о которой я слышал.
OstapBender
 Аватар для OstapBender
581 / 519 / 35
Регистрация: 22.03.2011
Сообщений: 1,585
24.07.2011, 14:42     Помощь новичку #46
Цитата Сообщение от Deviaphan Посмотреть сообщение
Признаюсь честно, академий я не кончал и этот термин слышу впервые...
Пойду гуглить.
имеется ввиду скорей всего "математическая логика" предмет 1-го курса. далее она развивается в дискретную математику.
там проходят множества, операции над ними ( короче то, что мы называем битовыми операциями ), деревья, списки, немного ТеорВера. ))

LosAngeles,
Deviaphan,
у Страуструпа, вычитал что при увеличении размера вектора он может переместится из 1-ой области памяти в другую . для этого как раз делают reserve . не следует ли из этого что он хранится как массив?
иначе о каком перемещении можно говорить если бы он хранился в виде связного списка. ( ведь каждый элемент случайно располагается в памяти, так?)

а как-раз всякие list, stack и тп не имеют reserve -> хранятся в виде связного списка ..
grizlik78
Эксперт C++
 Аватар для grizlik78
1882 / 1414 / 101
Регистрация: 29.05.2011
Сообщений: 2,958
24.07.2011, 14:48     Помощь новичку #47
Цитата Сообщение от OstapBender Посмотреть сообщение
у Страуструпа, вычитал что при увеличении размера вектора он может переместится из 1-ой области памяти в другую . для этого как раз делают reserve . не следует ли из этого что он хранится как массив?
Данные хранятся как массив, но это следует не из этого, а из требования непрерывности.
Но вообще-то они разговаривали про множества
Kastaneda
Модератор
Эксперт С++
 Аватар для Kastaneda
4236 / 2769 / 218
Регистрация: 12.12.2009
Сообщений: 7,104
Записей в блоге: 1
Завершенные тесты: 1
24.07.2011, 15:11     Помощь новичку #48
Цитата Сообщение от CoffeeSamurai Посмотреть сообщение
Это единственная книга про написание игр о которой я слышал.
Я данным направлением программирования никогда не интересовался, поэтому ни чего существенного посоветовать не могу.
Однажды в локальной сети наткнулся на папку "программирование", там огромная подборка книг, ну я ее всю скачал. Кроме всего прочего вот, что там есть:
Марк Зальцман
Компьютерные игры. Как это делается.
Издательство:Логрус.РУ
Год издания:2000
Страниц:530
ISBN:1-56686-904-8
Язык: русский
Размер:5.4 Мб [CHM]
Книга является источником исчерпывающих сведений о разработке компьютерных игр. Изобилуя яркими примерами, забавными и поучительными историями из практики знаменитых создателей признанных шедевров, она освещает все грани предмета, включая классификацию жанров и описание начальных этапов разработки, анализ дизайна, художественных, технических и коммерческих аспектов. Содержит практические советы по управлению проектами и маркетингу, а также массу полезных справочных сведений, вплоть до Интернет-ресурсов, отраслевых выставок и биографий разработчиков. Предназначена для широкого круга читателей.
А. Ла Мот
Секреты программирования игр
Издательство:Питер
Год издания:1999
Страниц:716
ISBN:5-88782-037-3
Язык: русский
Размер:11 Мб [PDF]
Качество:хорошее
Первое отечественное издание, представляющее полное руководство по программированию игр любого уровня сложности, включая сложные динамические игры со звуковыми эффектами (типа DOOM). Книга написана известными специалистами и содержит массу ценнейших советов по программированию различных игровых эффектов и ведению проекта от идеи до ее практической реализации с использованием всего спектра аппаратного обеспечения персонального компьютера (различных видеокарт, звуковых карт и т. п.). Для чтения книги необходимо знакомство с языком С.
Это я к тому, что книга Фленова далеко не единственная, ну и может данные книги кого-нибудь заинтересуют)
OstapBender
 Аватар для OstapBender
581 / 519 / 35
Регистрация: 22.03.2011
Сообщений: 1,585
24.07.2011, 15:13     Помощь новичку #49
упс... почему -то подумал что под "множеством" имеется ввиду "множество контейнеров", тогда ладно вопрос отменяется.

grizlik78, эмм... вектор не является базовым типом поэтому какие такие требования непрерывности?
как хочу так и реализую вектор, - могу через списки.
grizlik78
Эксперт C++
 Аватар для grizlik78
1882 / 1414 / 101
Регистрация: 29.05.2011
Сообщений: 2,958
24.07.2011, 15:17     Помощь новичку #50
OstapBender, я про std::vector, который не является базовым типом, но требования к реализации которого описаны в стандарте.
В частности в C++03 есть такое:
23.2.4 Class template vector
A vector is a kind of sequence that supports random access iterators. In addition, it supports (amortized)
constant time insert and erase operations at the end; insert and erase in the middle take linear time. Storage
management is handled automatically, though hints can be given to improve efficiency. The elements of a
vector are stored contiguously
, meaning that if v is a vector<T, Allocator> where T is some type
other than bool, then it obeys the identity &v[n] == &v[0] + n for all 0 <= n < v.size().
OstapBender
 Аватар для OstapBender
581 / 519 / 35
Регистрация: 22.03.2011
Сообщений: 1,585
24.07.2011, 15:27     Помощь новичку #51
grizlik78, получается из этого требования и высокая скорость доступа по индексу?
Deviaphan
Делаю внезапно и красиво
Эксперт C++
 Аватар для Deviaphan
1283 / 1217 / 50
Регистрация: 22.03.2011
Сообщений: 3,744
24.07.2011, 15:32     Помощь новичку #52
Цитата Сообщение от Kastaneda Посмотреть сообщение
Однажды в локальной сети наткнулся на папку "программирование",
У меня на винте папка под похожим названием есть. Конкретно по программированию игр более 500 книг. Но основная масса на ин-язе, конечно.
Так что ищите, литературы - горы!

Добавлено через 28 секунд
Цитата Сообщение от OstapBender Посмотреть сообщение
как хочу так и реализую вектор, - могу через списки.
Не можете.
grizlik78
Эксперт C++
 Аватар для grizlik78
1882 / 1414 / 101
Регистрация: 29.05.2011
Сообщений: 2,958
24.07.2011, 15:42     Помощь новичку #53
OstapBender, ну там и другие требования есть, например константное время выполнения оператора []. В общем-то в C++98 явного требования непрерывности не было (хотя и подразумевалось), но тем не менее ни у кого не возникло желание реализовать вектор не массивом.
OstapBender
 Аватар для OstapBender
581 / 519 / 35
Регистрация: 22.03.2011
Сообщений: 1,585
24.07.2011, 15:49     Помощь новичку #54
Цитата Сообщение от Deviaphan Посмотреть сообщение
Не можете.
Вы имеете ввиду несоответствие нормативам по времени доступа ?
ну так да, мой же будет вектор, китайский))
Deviaphan
Делаю внезапно и красиво
Эксперт C++
 Аватар для Deviaphan
1283 / 1217 / 50
Регистрация: 22.03.2011
Сообщений: 3,744
24.07.2011, 15:51     Помощь новичку #55
Цитата Сообщение от OstapBender Посмотреть сообщение
мой же будет вектор
Это будет китайский не вектор.)
ValeryLaptev
Эксперт C++
1005 / 784 / 46
Регистрация: 30.04.2011
Сообщений: 1,595
24.07.2011, 16:32     Помощь новичку #56
Цитата Сообщение от grizlik78 Посмотреть сообщение
OstapBender, ну там и другие требования есть, например константное время выполнения оператора []. В общем-то в C++98 явного требования непрерывности не было (хотя и подразумевалось), но тем не менее ни у кого не возникло желание реализовать вектор не массивом.
Потом это в 2003 году исправили и записали в стандарт явно.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.07.2011, 16:33     Помощь новичку
Еще ссылки по теме:

Ответьте новичку C++
C++ Подскажите новичку
Подскажите новичку C++

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

Или воспользуйтесь поиском по форуму:
grizlik78
Эксперт C++
 Аватар для grizlik78
1882 / 1414 / 101
Регистрация: 29.05.2011
Сообщений: 2,958
24.07.2011, 16:33     Помощь новичку #57
ValeryLaptev, я это место даже процитировал
Yandex
Объявления
24.07.2011, 16:33     Помощь новичку
Ответ Создать тему
Опции темы

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