Версия для печати темы
forum.0day.community _ Программирование _ Подскажите, плиз, хорошую краткую книгу по С++
Автор: pasha4ur Feb 19 2017, 10:38
Здравствуйте
Случайно наткнулся на распродажу курса по Unreal Engine Game development. Там С++ немного будут объяснять, но хочу сперва сам чуть его изучить.
Подскажите, плиз, небольшую книжку по нему. Можно на англ.
Знаком без особого опыта с php, js.
Я нашел:
Beginning C++ Through Game Programming / Изучаем С++ через программирование игр - отзывы плохие
И очень большие (1000+ страниц)
Programming: Principles and Practice Using C++ 2014 (2300 страниц, но нашел и на 1300) - пока лучшая по описанию, но здоровая
C++ Primer 5th Edition (1000, 2012 год)
Смотрел здесь и еще в 1 месте: https://tproger.ru/books/cpp-books-definitive-guide/
Автор: NigeL Feb 19 2017, 12:45
Не самая лучшая идея изучать кресты как первый язык чтобы на нем серьезно писать. Но вдруг ты будущий гений игродел.
Стенли Б. Липпман, Жози Лажойе, Барбара Э. Му "Язык программирования C++. Базовый курс" (5-е издание)
Только прошу, почитай хотя бы пару глав
Автор: pasha4ur Feb 19 2017, 12:58
(NigeL @ Feb 19 2017, 12:45)
![Перейти к цитате](style_images/0day[1]/message_quote_arrow.svg)
Не самая лучшая идея изучать кресты как первый язык чтобы на нем серьезно писать. Но вдруг ты будущий гений игродел.
Стенли Б. Липпман, Жози Лажойе, Барбара Э. Му "Язык программирования C++. Базовый курс" (5-е издание)
Только прошу, почитай хотя бы пару глав
Спасибо. Я знаю, что с++ страшный язык, которым пугают. :-)
Я по PHP и is прочитал кучу книг и курсов. Но в PHP мне не понравился сам язык, а с is проблема с разными браузерами. Работал недолго недолго в банке не в ит и там вообще везде ие7. :-) Есть jquery, конечно, по которому я тоже прошёл курсы.
Заинтересовало android development (java, которую когда-то пробовал и забил из-за командных строк и компиляции в ней).
Сейчас учу 3дмоделирование и случайно наткнулся на распродажу. Взял со скидкой 92% курс по unreal engine 4 и курс unity 5. Анриал открыт и там есть визуальное программирование + можно использовать для тендера интерьеров.
Перед тем, как вопрос удалили с тостер как нетематический, там посоветовали книгу C++ in 21 days. Описание у неё привлекательное. :-)
Автор: NigeL Feb 19 2017, 13:25
Не все так романтично как кажется на первый взгляд.
Автор: pasha4ur Feb 19 2017, 15:53
А что именно?
Вы чем занимаетесь и на чем?
Автор: pasha4ur Feb 19 2017, 21:37
Стенли Б. Липпман, Жози Лажойе, Барбара Э. Му "Язык программирования C++. Базовый курс" (5-е издание)
оказывается, что я ее тоже нашел в первом посте, но на англ она называет по-другому:
C++ Primer 5th Edition
В общем, пока приоритет примерно такой:
Stroustrup B. - Programming Principles and Practice Using C++, 2nd Edition - 2014 (все-таки создатель языка)
C++ Primer 5th Edition (но пишут, что она все раскрывает, а кое-какие темы языка только в виде задач)/ На форумах наоборот все хвалят или хают и советую Шилда (он нудно пишет, наверное)
И больше всего привлекает названием и отзывами: C++ in One Hour a Day, Sams Teach Yourself (8th Edition)
https://www.ozon.ru/context/detail/id/20994846/
Знакомые, знающие С++ (в том числе и сеньйор 1), конкретно книги не посоветовали. А на вопросы о сложности языка отвечают только смайликами и молчанкой
Автор: NigeL Feb 20 2017, 9:27
(pasha4ur @ Feb 19 2017, 21:37)
![Перейти к цитате](style_images/0day[1]/message_quote_arrow.svg)
оказывается, что я ее тоже нашел в первом посте, но на англ она называет по-другому:
C++ Primer 5th Edition
Точно, не заметил. Я только авторов помнил, в гугле первая ссылка на русское издание была.
Не ищи интересной книги по плюсам. Все названные о кромя 21 дня более менее вменяемые. 21 я очень сомневаюсь что это хорошая книга.
(pasha4ur @ Feb 19 2017, 21:37)
![Перейти к цитате](style_images/0day[1]/message_quote_arrow.svg)
Знакомые, знающие С++ (в том числе и сеньйор 1), конкретно книги не посоветовали. А на вопросы о сложности языка отвечают только смайликами и молчанкой
Тут их можно понять. Я тоже в замешательстве как правильно на вопросы сложности плюсов отвечать.
Но могу ответить точно, чтобы овладеть этим инструментом гением быть не надо, а вот хорошим зубрилкой очень даже неплохо.
Автор: pasha4ur Feb 20 2017, 9:56
Не ищи интересной книги по плюсам. Все названные о кромя 21 дня более менее вменяемые. 21 я очень сомневаюсь что это хорошая книга.
Я выбрал все же ту, что ты посоветовал. Только 6 издание на англ. В твоей книге хоть рассказывается про иде и как запускать, а в других теория сплошным потоком и командная строка. В книге создателя языка вообще ни разу не упонянул даже слово IDE.
Но могу ответить точно, чтобы овладеть этим инструментом гением быть не надо, а вот хорошим зубрилкой очень даже неплохо.
У меня нет проблем с изучением синтаксисов, программ. + я все конспектирую.
У меня обычно проблема, как это все применить и слепить во что-то рабочее.
Автор: NigeL Feb 20 2017, 10:02
(pasha4ur @ Feb 19 2017, 15:53)
![Перейти к цитате](style_images/0day[1]/message_quote_arrow.svg)
А что именно?
Вы чем занимаетесь и на чем?
Геймдевом и занимаюсь на текущий момент, только не тем который в голове у большинства при упоминании "крутого" слова геймдев. На плюсах пишется в основном движок игровой, при чем не только на них, шейдеры пишутся на специальных асеммблероподобных языках. Некоторые части движка вообще на голом си пишутся. Игровая логика и искусственный идиот пишутся на скриптовых языках тип Lua, никто в здравом уме не затратные части игры не будет писать она плюсах. Учти, игровой движок пишется большип количеством специалистов в среднем лет на 10. Все это огромная сфера и чтобы в это въехать, меньше года не уйдет точно чтобы просто разобраться что к чему.
Автор: pasha4ur Feb 20 2017, 11:01
только не тем который в голове у большинства при упоминании "крутого" слова геймдев
РС или мобильные инди?
Я же не буду писать игровой движок. Просто осваивал маю и увидел в ней опции экпорта в Unreal Engine. Для интереса зашел на Udemy, а там распродавали огромный курс по Unreal Engine 4 со скидкой 15 уе вместо 195. Взял, чтобы попробовать пока для интереса.
Была еще скидка на Unity 3d. Я его тоже взял. Но в Unreal Engine есть визуальный редактор. То есть теоретически можно что-то слепить и без С++
Автор: NigeL Feb 20 2017, 13:49
(pasha4ur @ Feb 20 2017, 11:01)
![Перейти к цитате](style_images/0day[1]/message_quote_arrow.svg)
Но в Unreal Engine есть визуальный редактор. То есть теоретически можно что-то слепить и без С++
В Unity 3D тоже есть визуальный редактор.
Автор: pasha4ur Feb 20 2017, 16:19
В Unity 3D тоже есть визуальный редактор.
В сравнениях об этом не говорили.
В качестве IDE Visual studio 2015 Community edition норм? Остальные платные, а 2017 - rc
Автор: kap1ec Feb 20 2017, 18:14
Збс книга для начинающих - Стивен Прата. Название не помню.
По "краткости" как и все. 1000+ )
(NigeL @ Feb 20 2017, 10:02)
![Перейти к цитате](style_images/0day[1]/message_quote_arrow.svg)
никто в здравом уме не затратные части игры не будет писать она плюсах
Никто с малым бюджетом не будет писать на плюсах. Это да. А вот про "в здравом уме" поспорить таки можно)
Автор: pasha4ur Feb 20 2017, 19:08
По "краткости" как и все. 1000+ )
1400+.
Хотел на русском читать, но она короче на 500 страниц - 980.
Я пока иде поставил. Visual studio 2015 Community edition
Сперва думал, что код не запускается, но добавил в него запрос пользовательского ввода и окно увидел.
Единственное, что выдает ошибки открытия библиотек:
» Нажмите, чтобы показать спойлер - нажмите опять, чтобы скрыть... «
"test1.exe" (Win32). Загружено "D:\docs\my docs\Visual Studio 2015\Projects\test1\Debug\test1.exe". Символы загружены.
"test1.exe" (Win32). Загружено "C:\Windows\SysWOW64\ntdll.dll". Невозможно найти или открыть PDB-файл.
"test1.exe" (Win32). Загружено "C:\Windows\SysWOW64\kernel32.dll". Невозможно найти или открыть PDB-файл.
"test1.exe" (Win32). Выгружено "C:\Windows\SysWOW64\kernel32.dll"
"test1.exe" (Win32). Загружено "C:\Windows\SysWOW64\kernel32.dll". Невозможно найти или открыть PDB-файл.
"test1.exe" (Win32). Загружено "C:\Windows\SysWOW64\KernelBase.dll". Невозможно найти или открыть PDB-файл.
"test1.exe" (Win32). Загружено "C:\Windows\SysWOW64\guard32.dll". Невозможно найти или открыть PDB-файл.
"test1.exe" (Win32). Загружено "C:\Windows\SysWOW64\user32.dll". Невозможно найти или открыть PDB-файл.
"test1.exe" (Win32). Загружено "C:\Windows\SysWOW64\win32u.dll". Невозможно найти или открыть PDB-файл.
"test1.exe" (Win32). Загружено "C:\Windows\SysWOW64\gdi32.dll". Невозможно найти или открыть PDB-файл.
"test1.exe" (Win32). Загружено "C:\Windows\SysWOW64\gdi32full.dll". Невозможно найти или открыть PDB-файл.
"test1.exe" (Win32). Загружено "C:\Windows\SysWOW64\advapi32.dll". Невозможно найти или открыть PDB-файл.
"test1.exe" (Win32). Загружено "C:\Windows\SysWOW64\msvcrt.dll". Невозможно найти или открыть PDB-файл.
"test1.exe" (Win32). Загружено "C:\Windows\SysWOW64\sechost.dll". Невозможно найти или открыть PDB-файл.
"test1.exe" (Win32). Загружено "C:\Windows\SysWOW64\rpcrt4.dll". Невозможно найти или открыть PDB-файл.
"test1.exe" (Win32). Загружено "C:\Windows\SysWOW64\sspicli.dll". Невозможно найти или открыть PDB-файл.
"test1.exe" (Win32). Загружено "C:\Windows\SysWOW64\cryptbase.dll". Невозможно найти или открыть PDB-файл.
"test1.exe" (Win32). Загружено "C:\Windows\SysWOW64\bcryptprimitives.dll". Невозможно найти или открыть PDB-файл.
"test1.exe" (Win32). Загружено "C:\Windows\SysWOW64\shlwapi.dll". Невозможно найти или открыть PDB-файл.
"test1.exe" (Win32). Загружено "C:\Windows\SysWOW64\combase.dll". Невозможно найти или открыть PDB-файл.
"test1.exe" (Win32). Загружено "C:\Windows\SysWOW64\ucrtbase.dll". Невозможно найти или открыть PDB-файл.
"test1.exe" (Win32). Загружено "C:\Windows\SysWOW64\psapi.dll". Невозможно найти или открыть PDB-файл.
"test1.exe" (Win32). Загружено "C:\Windows\SysWOW64\imm32.dll". Невозможно найти или открыть PDB-файл.
"test1.exe" (Win32). Загружено "C:\Windows\SysWOW64\version.dll". Невозможно найти или открыть PDB-файл.
"test1.exe" (Win32). Загружено "C:\Windows\SysWOW64\ole32.dll". Невозможно найти или открыть PDB-файл.
"test1.exe" (Win32). Загружено "C:\Windows\SysWOW64\fltLib.dll". Невозможно найти или открыть PDB-файл.
"test1.exe" (Win32). Загружено "C:\Windows\SysWOW64\ntmarta.dll". Невозможно найти или открыть PDB-файл.
"test1.exe" (Win32). Загружено "C:\Windows\SysWOW64\msvcp140d.dll". Невозможно найти или открыть PDB-файл.
"test1.exe" (Win32). Загружено "C:\Windows\SysWOW64\vcruntime140d.dll". Невозможно найти или открыть PDB-файл.
"test1.exe" (Win32). Загружено "C:\Windows\SysWOW64\ucrtbased.dll". Невозможно найти или открыть PDB-файл.
"test1.exe" (Win32). Загружено "C:\Windows\SysWOW64\kernel.appcore.dll". Невозможно найти или открыть PDB-файл.
Программа "[19496] test1.exe" завершилась с кодом 0 (0x0).
Ну, и при открытии непонятно было, что выбирать. там было куча заготовок. Я выбрал пустой проект.
В книге препод дал список ИДЕ на все ос и типа "Сами разберетесь и настроите, как использовать выбранную вами ИДЕ".
Пока кликаю по "Локальный отладчик" в режиме Debug.
На 1 файл с исходным кодом в папке проекта создается куча папок и файлов.
Автор: грик Feb 21 2017, 0:06
(pasha4ur @ Feb 20 2017, 19:08)
![Перейти к цитате](style_images/0day[1]/message_quote_arrow.svg)
В книге препод дал список ИДЕ на все ос и типа "Сами разберетесь и настроите, как использовать выбранную вами ИДЕ
Хорошее владение конкретной IDE вообще отдельный вопрос, приходит с опытом и тоннами кода.
Автор: NigeL Feb 21 2017, 7:55
(kap1ec @ Feb 20 2017, 18:14)
![Перейти к цитате](style_images/0day[1]/message_quote_arrow.svg)
Никто с малым бюджетом не будет писать на плюсах.
Машинариум, Braid, Cradle.
(kap1ec @ Feb 20 2017, 18:14)
![Перейти к цитате](style_images/0day[1]/message_quote_arrow.svg)
Збс книга для начинающих - Стивен Прата. Название не помню.
По "краткости" как и все. 1000+ )
Это да. А вот про "в здравом уме" поспорить таки можно)
Bethesda, GameBryo - написан на плюсах, давно, много крови и сил ушло, а больше 10 лет его используют. Большая же часть скриптов и игровой логики в играх написана на Lua. Lua код там вообще по-моему в консоли можно набирать.
Автор: pasha4ur Feb 21 2017, 11:52
жаль, что нет знакомых программеров в этом деле (почти все php и мне его же советуют всегда). Смотрел про движки на ютьюбе и там же читал комментарии.
Уже читаю 3 главу. Пока не порадовала собственное разное значение байтов и то, что тот же int на одной системе может быть 16 бит, а на другой 32.
Автор: kap1ec Feb 21 2017, 13:25
(NigeL @ Feb 21 2017, 7:55)
![Перейти к цитате](style_images/0day[1]/message_quote_arrow.svg)
Машинариум, Braid, Cradle.
Bethesda, GameBryo - написан на плюсах, давно, много крови и сил ушло, а больше 10 лет его используют. Большая же часть скриптов и игровой логики в играх написана на Lua. Lua код там вообще по-моему в консоли можно набирать.
Ничего против скриптов не имею. Только вот выучить скрипт, но не уметь забиндить функцию для него не шибко то хорошее начинание.
А примеры можно найти любые. Вопрос в другом. Можно ли написать игру полностью на С++ ? Можно. Делают ли так известные студии? Делают. Можно ли игру написать одному? Можно, наверное.
По геймдеву есть старая, но крутая А. Ламот "Программирование игр для Windows." и Gregory "Game Engine Architecture".
Автор: pasha4ur Feb 21 2017, 20:48
В общем, 1/10 книги уже прочитал. Простые типы данных (50+ страниц) вынесли мозг.
Но мне подсказали, что в основном юзается для чисел int, long и double (signed/unsigned).
Автор: -RC- Feb 21 2017, 20:57
(pasha4ur @ Feb 21 2017, 20:48)
![Перейти к цитате](style_images/0day[1]/message_quote_arrow.svg)
В общем, 1/10 книги уже прочитал. Простые типы данных (50+ страниц) вынесли мозг.
Но мне подсказали, что в основном юзается для чисел int, long и double (signed/unsigned).
каким типом данных ты бы сохранял баланс счета кредитной карты?
Автор: pasha4ur Feb 21 2017, 21:46
(-RC- @ Feb 21 2017, 20:57)
![Перейти к цитате](style_images/0day[1]/message_quote_arrow.svg)
каким типом данных ты бы сохранял баланс счета кредитной карты?
наверное, long double (на случай триллиардов).
А учитывая, как языки программирования "круто" считают дробные части из-за двоичной системы хранения данных (в js 0.2+0.1 =
0.30000000000000004), то подумал бы о хранении в целочисленном виде в long double, при выводе делил на порядок что ли
Автор: -RC- Feb 21 2017, 22:32
А учитывая, как языки программирования "круто" считают дробные части из-за двоичной системы хранения данных (в js 0.2+0.1 =
0.30000000000000004), то подумал бы о хранении в целочисленном виде в long double, при выводе делил на порядок что ли
ну тут проблема не в языках.
я просто хотел акцентировать внимание на типах данных и их комбинациях.
например иногда создают создают структуру типа Money с двумя переменными для целой и дробной части.
везде как пример предлагают статью
http://docs.oracle.com/cd/E19957-01/806-3568/ncg_goldberg.html
round-off проблема будет встречаться постоянно, особенно в финансовой сфере.
удели внимание этой теме, знания пригодятся
Автор: pasha4ur Feb 21 2017, 22:47
спасибо
удели внимание этой теме, знания пригодятся
Я больше для движка Unreal читаю. Возможно, там и не надо прямо супер его знать.
не думаю, что я встряну в финансовую сферу. В вакансиях на джунов часто в реальности ищут мидлов и требования соответствующие.
Автор: NigeL Feb 22 2017, 18:22
Как там Столлман говорил, чтобы написать программу мне нужны только вещественные и указатели.
Автор: pasha4ur Feb 22 2017, 21:15
Сегодня всплыл давно отсутсвующий в скайпе знакомый и выдал:
» Нажмите, чтобы показать спойлер - нажмите опять, чтобы скрыть... «
хуевая идея изучать с++ в 2017-м году)))
он конечно не вымрет еще долго
но на нем сейчас пишут обычно те, кто когда-то имел несчастье его изучить, ну и в случаях, когда без с++ никак (но такое все реже и реже)
С++ не менее обїемный, чем джава со всякими spring, hibernate, j2ee и прочим пиздецом
а в плане хитрожопости, с++ переплюнет любой современный язык
Автор: -RC- Feb 22 2017, 21:51
лучше учиться на медика и валить забугор
Автор: NigeL Feb 23 2017, 11:41
(-RC- @ Feb 22 2017, 21:51)
![Перейти к цитате](style_images/0day[1]/message_quote_arrow.svg)
лучше учиться на медика и валить забугор
Лучше валить за бугор и там учиться на медика. Ещё проще - на фармаколога.
Автор: pasha4ur Feb 23 2017, 12:09
Я в школе учился в медицинском классе (побеждал на олимпиадах). С меня хватило. ![smile.gif](style_emoticons/0day_emo/smile.gif)
Типы данных в С++ выносят мозг.
Вчера ночью читал про Enumerators.
В общем, структура, которая хранит в себе именованные константы, которые обычно на 1 инкрементируются. Все должны быть уникальными и переменной назначаться только задекларированные знаковые значения.
А дальше автора книги как понесло:
enum spectrum {red, orange, yellow, green, blue, violet, indigo, ultraviolet};
spectrum band;
band = orange + red;
int color = blue;
color = 3 + red;
enum {zero, null = 0, one, numero_uno = 1}; // несколько констант равны одному значению. Зачем?
enum bits{one = 1, two = 2, four = 4, eight = 8};
bits myflag;
myflag = bits(6); // valid, because 6 is in bits range
Автор: Console Feb 26 2017, 23:23
(-RC- @ Feb 21 2017, 22:32)
![Перейти к цитате](style_images/0day[1]/message_quote_arrow.svg)
ну тут проблема не в языках.
я просто хотел акцентировать внимание на типах данных и их комбинациях.
Мне кажется что типы данных одна из тех очеень важных ступенек без которой совсем плохо..
Автор: pasha4ur Feb 27 2017, 11:18
Разве что в с++
Тут столько типов и нюансов.
Например, нельзя сравнить массивы или строки с помощью оператора ==, потому что и строки (массив знаков), и массивы в С++ являются указателями на ячейку памяти со значением первого элемента в них.
Книга запутанная. В разделе о циклах препод рассказывал страниц 20 о разных режимах, а потом про различные реализациях эмуляции конца файла в консолях. Хотя до этого рассказывал о cin в разделе про типы данных.
Дальше раздел про условия и ветвления и там снова что-то левое будет. Уже вижу в главе:
The cctype library of character functions
Number-reading loops
Basic file input/output
Автор: pasha4ur Mar 3 2017, 23:34
В общем, прочитал 6 глав. Не очень понравился язык. Какой-то каменный век, где даже 2 строки (char *) нельзя сравнить между собой без функции.
Познакомился с гейм программистом, который работал с несколькими движками. Он сказал, что в Украине и вообще юнити более популярный. Особенно на мобилках. И комьюнити больше.
Попробую С# и Unity. Тем более js я уже знаю
Автор: -RC- Mar 4 2017, 0:23
В общем, прочитал 6 глав. Не очень понравился язык. Какой-то каменный век, где даже 2 строки (char *) нельзя сравнить между собой без функции.
strcmp нормально юзается.
просто сложно бэкэнд делать высокопроизводительный.
а когда еще распределенные системы...да под высокой нагрузкой
Автор: pasha4ur Mar 4 2017, 0:37
Для меня нормально и естественно это if (str1 == str2), а не if (!strcmp(str1, str2)).
Я пока не готов к такому сексу. Я знаю, что это можно сделать классом string, но хочется ближе уже к современным простым языкам, где ты думаешь над реализацией идеи, а не борешься с реализацией алгоритмов в языке.
Посоветовали C# Starter ITVDN. На крайний случай можно делать 3д модели и продавать их в Unity store.
Большое спасибо всем за уделенное время и помощь.
П.С. По c# тема для новичков что-то заглохла.
Автор: -RC- Mar 4 2017, 10:57
в java те же яица.
это нормально, иногда нужно сравнивать ссылки, а не содержимое объектов
Автор: pasha4ur Mar 4 2017, 11:06
Я сейчас очень быстро пробегаю по книги с++. За утро уже 80 страниц.
В общем, странный язык. Из-за этих указателей столько геморроя. В ту же функцию нужно передавать массив и его длину или конец, а если массив многомерный, то уже проблемы.
Вернуть массив или строку нельзя. Опять указатели и велосипеды из-за них.
В общем, я бы не хотел с таким иметь дело.
Автор: -RC- Mar 4 2017, 11:12
в других языках аналогичные костыли.
с++ норм язык, если писать на нем
Автор: pasha4ur Mar 4 2017, 11:27
в php и js уж точно таких костылей я не видел
Автор: kap1ec Mar 4 2017, 23:09
(pasha4ur @ Mar 4 2017, 11:27)
![Перейти к цитате](style_images/0day[1]/message_quote_arrow.svg)
в php и js уж точно таких костылей я не видел
![smile.gif](style_emoticons/0day_emo/smile.gif)
Сравниваете отвертку и перфоратор.
Забрасывать С++ т.к. Вам не понравилось как сравниваются строки это сильно. К слову, для таких случаев std::string существует. Ну да ладно.
Автор: -RC- Mar 5 2017, 0:38
#include <iostream>
template<typename T>
struct A {
typedef int R();
template<typename U>
static U *f(int) {
return 0;
}
static int f() {
return 0;
}
};
template<typename T>
bool g() { A<T> a; return !(typename A<T>::R*)a.f<int()>(0); }
template<typename T>
bool h() { A<T> a; return !( A<T>::R*)a.f<int()>(0); }
int main() {
std::cout << g<void>() << f<void>() << std::endl;
}
ладно бы за такие конструкции еще
Автор: pasha4ur Mar 5 2017, 1:07
Это был лишь пример.
Лично мне идеология с++ не зашла. Я из тех, кто хочет просто отправить в функцию многомерный массив 1 аргументом, обработать и вернуть обратно тоже массив (или строку), а не страдать с велосипедами из указателей и аргументов длин массивов.
Для embedded, наверное, идеология с++ хороша в плане контроля озу и прочего. Но я не хочу страдать такой камасутрой. Меня все знакомые итшники отговаривают.
За сегодня прочитал и немного законспектировал 160 страниц. Но читаю уже не напряжно, для ознакомления и конспектирую базу. Кое-что пригодится и в других яп. Например, что большие объёмы данных лучше передавать по ссылке, чтобы не тратить ресурсы на создание копии.
Templates начало прочитал и записал для чего и как, но, когда там пошли простыни кода с указателями, адресами, ссылками, то забил. Понадобится - нагуглю.
Ещё, наверное, прочитаю про неймспейсы, объекты, классы, наследования - страниц 200-300 - и хватит.
В будущем попробую c# для unity. Посоветовали курс от itvdn
Автор: kap1ec Mar 5 2017, 11:58
С++ не используется для программирования микроконтроллеров.
Вы простите. А Вы думаете у Вас C# зайдет с подобным подходом? К слову, в нем тоже можно запросить доступ к указателям. Я понимаю, когда людей отпугивает WinAPI. Или рендеринг. Но не базовые понятия же ж.
Автор: -RC- Mar 5 2017, 17:37
меня скриптинг в юнити отпугнул, несмотря на то, что я считаю себя опытным опытным программистом.
в геймдеве действуют иные принципы программирования.
они не подходят для построения промышленных систем.
Автор: pasha4ur Mar 5 2017, 22:45
С++ не используется для программирования микроконтроллеров.
Ну, ардуино всякие и т д. Я же не спец.
К слову, в нем тоже можно запросить доступ к указателям.
Но, наверное, же не обязательно?
А в плюсах даже переменная, которой присвоили массив или строку - это лишь адрес первой ячейки с данными. Хочешь слепить строку из символов без класса - выставь длину и зарезервируй ячейку для нулевого знака, а то пойдет читать озу после конца строки.
В общем, не зашло мне это. Без обид.
Автор: -RC- Mar 6 2017, 17:46
Хочешь слепить строку из символов без класса - выставь длину и зарезервируй ячейку для нулевого знака
ну и быстрее это, чем проверки строгой типизации и выходы за пределы массива.
а когда в геймдеве ты работаешь постоянно с массивами данных, то java будет гораздо медленнее, несмотря даже на jvm оптимизации
Автор: NigeL Mar 6 2017, 18:31
Хочется верить, что в будущем в работе с графикой будет использоваться Rust.
Автор: Spectral Mar 6 2017, 18:44
Логично, если php "не зашел", то cpp и подавно не зайдет. Странно, что никто не написал в начале темы. ![smile.gif](style_emoticons/0day_emo/smile.gif)
ТС, написал бы мораль, мол быстрая книга оказалась эта и эта. Другие тоже будут читать.
Автор: pasha4ur Mar 6 2017, 20:17
Логично, если php "не зашел", то cpp и подавно не зайдет. Странно, что никто не написал в начале темы.
Я думал, что С++ какой-то супер-пупер удобный и классный язык. раз на нем сделали фришный игровой движок и т д.
А он что-то оказался не очень юзерфрендли
![smile.gif](style_emoticons/0day_emo/smile.gif)
ТС, написал бы мораль, мол быстрая книга оказалась эта и эта. Другие тоже будут читать.
Я же только 1 выбрал
Prata S. - C++ Primer Plus, 6th Edition - 2011
Но в ней часто расписанно что-то не очень важное или про С (не ++), или то о чем будет рассказано в будущем. Или вообще 1 тема размазана по нескольким главам не по теме.
Автор: Celtis Mar 6 2017, 21:41
Пожалуйста, не забрасывайте программирование!
Дочитайте хоть одну книгу до середины и сразу в бизнес!
Чем вас таких, амбициозных и креативных больше, тем мне легче обосновывать свои требования по оплате)))
Автор: pasha4ur Mar 6 2017, 22:22
Есть эталон килограмма. А вот ваш юмор можно использовать как эталон идеальной плоской поверхности.
Автор: Celtis Mar 6 2017, 23:18
Ну что ж, пожалуй объясню свою позицию.
"мне бы книжку, где в двух абзацах хорошо объясняются плюсы". Да нет таких книг. И не может быть: книги от того толстые, что язык сложный и многогранный. И даже прочтя самую лучшую книгу Вы все равно знать плюсы не будете. Максимум - относительно бегло читать код.
Но чукча не читатель, чукча - писатель Вам же не читать текст программ, Вам - творить. Причем сразу в сложном жанре - геймдеве.
Извините, но от стойкой ассоциации с "Ок, Гугл, как сделать операцию на мозге" или "Дарогу пакажищь, да?" никуда не деться.
Автор: pasha4ur Mar 6 2017, 23:23
Другого места почесать чсв нет?
Про пару абзацев, где хорошо объясняют плюсы. (фейспалм)
Мне жалко тратить на вас время. Все же нашелся говнометатель, который вместо советов накидывает в теме Г на вентилятор.
Invision Power Board
© Invision Power Services