Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > C/C++: Общие вопросы > C++ не знаю какой учить |
Автор: _Nexx 4.12.2007, 23:02 |
Решил изчать с++ и совсем запутался, как я понял есть несколько синтексисов для с++, для консоли(подобие доса) и оконные(для винды) Что учить, что реально в будушем поможет при работе и т.д. что учить .что читать и каким кампиляторам пользоваться. пожалйста ответьте), |
Автор: MAKCim 4.12.2007, 23:08 |
_Nexx, поищите сначала по форуму подобные темы не раз поднимались |
Автор: _Nexx 4.12.2007, 23:21 |
вот потому и открыл изначально поискал но сыщик из меня ни какой(( и потому написал пожалуйсто ответи |
Автор: Random13 4.12.2007, 23:27 |
В опчем если учить С++ основательно то нужно двигаться в таком направлении С, С++, Windows API, MFC. Ну это как бы мой путь - все зависит от того какую ты цель ставишь. Можно всю жизнь неплохо проработать на Юниксе или реал тайме и никакие винды тебе на фик нужны не будут... |
Автор: _Nexx 4.12.2007, 23:31 |
я имею ввиду именно с++, а проблема мою заключатеся в том что две разновидности с++ 1)- консольные программы, когда окошечко оля дос 2)- оконные приложения виндос(компилятор -Borland c++ 6.0) Вот как я знаю в них различный синтаксис, вот и встает вопроскакой учить и че читать И как я в одной книге прочел, многие програмисты не рекоминдуют учить с чтоб потом выучить с++ |
Автор: likehood 4.12.2007, 23:36 |
Этот компилятор действительно имеет нестандартные расширения синтаксиса, за что его многие и не любят. Но это не единственный компилятор/среда для написания оконных программ. Есть тот же Visual C++. В любом случае, начать нужно с изучения самого языка. |
Автор: _Nexx 4.12.2007, 23:40 |
ну а есть такое весомое различие, ведь есть книжки и по с++ именно для оконных программ, тож для програмистов с нуля |
Автор: Random13 4.12.2007, 23:43 |
С++ написан на С, так же как у MFC в основе WINDOWS API . Можно учить и программировать сразу на МФС не зная ничего остального - пока идет все по шаблону и нет никаких отклонений. Смотря какую ты цель ставишь. Просто С++ и С разные языки и у них философия разная, поэтому философия С может немного мешать при изучении С++. Но С++ написан на С, знание С помогает понимать как все на С++ устроено, что значит выделить память, что значит ее инициализировать, работа с битами и много чего другого - имплементация внутри методов и функций в С++ - это С. |
Автор: JackYF 4.12.2007, 23:44 |
консоль != DOS распечатать и повесить на стенке. --- Ты можешь пойти и другим путём. Учить прежде всего язык, семантику, идиомы С++. Писать консольные приложения. Полгода хотя бы. Затем (а лучше, позже ![]() Добавлено через 2 минуты и 27 секунд Под консоль программирование не заканчивается HelloWorld, оно даже на этом не начинается. В консольных приложениях легче не отвлекаться не кнопочки и формошлёпство, а учить и оттачивать знание языка и алгоритмов. Впрочем, это всё уже не десяток раз повторялось. Одно из главных умений [будущего]программиста - искать информацию. В том числе и по форуму. |
Автор: JackYF 4.12.2007, 23:48 |
верно. Не учи С. Учи сразу С++. |
Автор: likehood 4.12.2007, 23:48 | ||
хорошо сказано! |
Автор: JackYF 4.12.2007, 23:49 |
как показывает практика, их c самого начала брать не очень стоит. Самому языку там, как правило, [почти] не учат. Бывают и исключения. |
Автор: Random13 4.12.2007, 23:51 |
Скажем так - С - процедурный язык, в основном используется при работе с реал таймом, в Юниксе и т.д... С++ - объектно ориентированный язык, написанный на С. Виндовс АйПиАй - это можно сказать процедурный язык для работы с окнами под винды, написанный на С++, на С++ написаны классы для работы с окнами для него. MFC язык уже с конкретными шаблонами - в основе Windows API. Так как многие проги под винды похожи, там есть конкретные шаблоны и работа с ними, многие вещи тоже инкапсулированы и ты их не видишь. Но если тебе прийдется писать прогу, скажем обрабатывающую железяку через USB, работать с драйвером, или просто построить свою иерархию классов в MFC, опираясь на С++ и Windows API знания чистого MFC (Visual C++) тебе мало помогут. |
Автор: JackYF 4.12.2007, 23:54 |
язык не может быть на чём-то написан. С был подмножеством С++. Сейчас это два разных языка. От себя советую ни в коем случае не учить MFC. Эта технология считается устаревшей и давно не поддерживается. Лучше уже c++.net. Это если под Windows. Под юникс - чистые "С/С++" + много хороших библиотек доминируют. |
Автор: Random13 5.12.2007, 00:07 | ||
Если С++ не написан на С и независим от него, тогда почему в нем применяется статическое связывание, а не динамическое, как в Жаве? Почему в классе есть конкретный указатель на конкретную таблицу виртуальных функций ? Вся имплементацияя С++ в основе больше 90 процентов - это С. |
Автор: MAKCim 5.12.2007, 00:16 | ||
имелся в виду компилятор? ![]() не факт, очень даже не факт разве что самые первые компиляторы С++
я никак не могу понять, какая связь между "C++ написан на С" и теми концепциями, которые ты назвал ![]() и Java тут совсем не в тему |
Автор: Greeen 5.12.2007, 00:22 | ||
Тут вообще много чего не в тему:
|
Автор: Random13 5.12.2007, 00:25 | ||
Жава тут в тему. Вот она независима ни от какого другого языка, так же как С#. С++ же зависим от С, от средств, имеющихся в С, инкапсулируй его, сделай динамическое связывание и получишь C#. То есть Жаву фирмы майкрософт - это уже не будет С++... Добавлено через 1 минуту и 53 секунды
Ну это для тебя не в тему. Человек собирается учить и спрашивает - я ему и объясняю на пальцах ху из ху... |
Автор: Greeen 5.12.2007, 00:29 | ||
![]() ![]() ![]()
объяснять на пальцах - это одно, а нести бред (например называя mfc языком с шаблонами) - это совсем другое... ты уж не обижайся, но такими советами ты просто запутаешь человека |
Автор: Random13 5.12.2007, 00:34 | ||
В МФС ты в начале проекта выбираешь его шаблон - мульти документ или сингл, с датабейс или нет и так далее. то есть изначальный шаблон - костяк программы - в чем тут бред ? |
Автор: MAKCim 5.12.2007, 00:35 | ||||
последние ваши посты - это бред извините, но это так Добавлено через 2 минуты и 8 секунд
а использовать MFC без визардов нельзя? ![]() |
Автор: Greeen 5.12.2007, 00:38 | ||
Тип проекта ты выбираешь в визарде, который по сути к самой библиотеке никакого отношения не имеет. Можно и самому написать прогу, генерирующую костяк MFC-приложения. Каким термином ты ее назовешь?! Добавлено через 11 секунд Не важно. Пустой разговор пошел. |
Автор: Random13 5.12.2007, 00:39 | ||
Извиняться не за что у каждого право на свое видение. Тем более не вижу особо доводов в пользу вашей теории о бредовости моей. |
Автор: MAKCim 5.12.2007, 00:44 | ||||||
|
Автор: Random13 5.12.2007, 00:45 | ||
А использовать С++ без классов нельзя - пиши себе прогу на С - компилируй на С++ ? ![]() В том одна из прелестей библиотек МФС, что они позволяют использовать такие шаблоны в визарде, в отличие от библиотек Виндовс АйПиАй. Это во-первых. Во-вторых человек только ничинает учить - ты ему посоветуешь начинать освоение МФС без визарда и его шаблонов. ![]() |
Автор: Greeen 5.12.2007, 00:49 |
Random13, визард - это не фича MFC. Это фича студии. Кстати там же есть "шаблон" (каркас) для WinAPI приложения. |
Автор: MAKCim 5.12.2007, 00:49 |
_Nexx, посмотрите http://forum.vingrad.ru/forum/topic-163072/unread-1/hl/%25D0%25B8%25D0%25B7%25D1%2583%25D1%2587%25D0%25B5%25D0%25BD%25D0%25B8%25D0%25B5+%25D1%2581/index.html http://forum.vingrad.ru/forum/topic-49632/unread-1/hl/%25D0%25B8%25D0%25B7%25D1%2583%25D1%2587%25D0%25B5%25D0%25BD%25D0%25B8%25D0%25B5+%25D1%2581/index.html и http://forum.vingrad.ru/forum/topic-7168/unread-1/hl/%25D0%25B8%25D0%25B7%25D1%2583%25D1%2587%25D0%25B5%25D0%25BD%25D0%25B8%25D0%25B5+%25D1%2581/index.html |
Автор: Greeen 5.12.2007, 00:50 |
Ты хочешь сказать, что C++ без классов - это C? |
Автор: MAKCim 5.12.2007, 00:50 |
Тема закрыта |