Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Visual C++/MFC/WTL > Visual C++ 6.0 или Visual C++ 2008 |
Автор: Riddik 25.1.2009, 22:47 |
У меня есть Visual C++ 6.0, сейчас скачал Visual C++ 2008 Expess Edition с оф.сайта. К изучению ни того, ни другого ещё не приступал. Есть книга в бумажном варианте Холзнера Visual C++ 6.0 По Visual C++ 2008 Expess Edition нет ничего. На чём посоветуете остановиться? Раз 6-ой полная версия, может лучше на нём, чем на Expess Edition 2008-ом? Действительно ли в Expess Edition нет MFC? Добавлено через 2 минуты и 53 секунды И ещё вопрос, уж простите за дремучесть в этих делах: Visual C++. NET и Visual C++ 2008 Expess Edition - это равносильные вещи? |
Автор: bel_nikita 25.1.2009, 23:31 |
Устанавливай VC++ 2008 и VC++ 6 ![]() В Express Edition действительно нет MFC. Если твоя цель изучить MFC, то бери VC++ 6 тем более, что и книга есть. После основ, заложенных на VC6, перейти на VC 2008 не будет никаких проблем. Я, например, до сих пор пользуюсь VC6. Visual C++ .NET - это скорее всего VC 7.1, а Visual C++ 2008 - это версия VC 9.х. Ну, и Visual C++ 2005 - это версия VC 8.х. |
Автор: Pion 25.1.2009, 23:44 |
Мне 2008 очень понравилась... Благо если студент, то можно бесплатно получить... А вот шестерка че-то подвисала со временем во время компиляции, хотя тоже очень ниче. |
Автор: Riddik 26.1.2009, 01:53 |
Благодарю за ответы )) Вобщем, пока на VC6 буду в основном, а 2008 добавочка)), хотя не MFC моя цель, а DirectX)) |
Автор: mrbrooks 26.1.2009, 09:26 |
тогда 2008 ![]() |
Автор: Riddik 26.1.2009, 10:25 |
Только вот проблема, снова извиняюсь за дремучесть, но без MFC я и виндовское окошко не смогу создать в Visual C++ 2008 )) Я правильно понимаю, тогда нужно winAPI? Или я совсем бред несу? |
Автор: mrbrooks 26.1.2009, 10:27 |
совершенно верно ![]() все ок ![]() |
Автор: Riddik 26.1.2009, 11:56 |
Благодарю)) |
Автор: Riddik 27.1.2009, 02:25 | ||||
Я в затруднении... что же это за различия такие между Visual C++ 6.0 и Visual C++ 2008? Вот код простого построения окна для Visual C++ 6.0 с использованием винАПИ: Только те строки, которые не работают для Visual C++ 2008:
Visual C++ 6.0 всё понятно, появляется окошко. А Visual C++ 2008 ругается, что не может преобразовать "WINCLASS" в тип LPCWSTR. Поэтому я переделал так для него:
Почему так происходит? И что самое интересное, если для Visual C++ 6.0 указать преобразование в LPCWSTR перед "текст" то он не работает. Т.е., первый вариант работает только для 6.0., а второй только для 2008. Добавлено через 11 минут и 48 секунд И ещё я подсмотрел, что вместо (LPCWSTR) лучше просто L ставить перед "text". Почему, что это за L? В Visual C++ 2008 функция CreateWindowEx(..., (LPCWSTR)"Пустое окошко", ...); выводит квадратики в заголовок окна, а если так: CreateWindowEx(..., L"Пустое окошко", ...); То всё в порядке. А для Visual C++ 6.0 всё прекрасно работает просто так: CreateWindowEx(..., "Пустое окошко", ...); |
Автор: Earnest 27.1.2009, 08:44 |
Это не разница между компиляторами; они оба поддерживают и Юникод и Анси; просто у них разные умолчания: у MSVC 6.0 по умолчанию проект Multibyte, а в 2008 - Юникод. Пиши строковые литералы используя макрос TEXT ("MyStr"), и не будет никакой разницы. Иди сходи в настройки проекта и поменяй charset. |
Автор: Riddik 27.1.2009, 10:32 |
Спасибо)) |
Автор: stat007 27.1.2009, 12:11 |
Как по мне, то лучше всего это 6-я версия. |
Автор: IKM2007 27.1.2009, 12:57 |
Ага, я тоже только начал MFC, хотел в 2008 Team Edition, но книги по 6.0, установил 6.0, за день 150 страниц перевалил. Очень быстро все учишь. Да и почти везде 6.0, например у нас в универе, а 2008 редко попадается. В итоге использую 2008 - для консольных приложении; 6.0 - для windows-приложении. |