Модераторы: bsa

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Первая программа на С++ в среде Visual Studio, пошаговая инструкция с иллюстрациями 
:(
    Опции темы
archimed7592
Дата 11.4.2008, 11:20 (ссылка) |    (голосов:3) Загрузка ... Загрузка ... Быстрая цитата Цитата


Архимед
****


Профиль
Группа: Завсегдатай
Сообщений: 2531
Регистрация: 12.6.2004
Где: Moscow

Репутация: 6
Всего: 93



Если у Вас не влезают картинки, то окройте версию для печати: опции темы -> версия для печати (или просто нажмите сюда).

Далее будет пошагово и с иллюстрациями описан процесс написания самой простой программы на С++ в среде Visual Studio.
Примечание: инструкция создавалась с использованием Visual Studio 2008, но с тем же успехом может быть применена на версиях 2003(.NET) и 2005.

Далее Visual Studio будет также упоминаться под аббревиатурой VS.

Запускаем Visual Studio.
Если это первый запуск, то VS может задать пару вопросов. Если Вы не знаете что ответить на эти вопросы, то просто жмите OK.
В итоге у Вас должно появится такое окно.
user posted image
Примечание: скорее всего оно не будет пустым - будет открыта страница Start. Её можно смело закрывать.


Cоздаём проект.
user posted image
File -> New -> Project
user posted image
Visual C++ -> Win32 -> Win32 Console Application -> Введите имя проекта -> OK
user posted image
Нажмите Finish.

Выключаем в настройках проекта Юникод.
user posted image
Project -> Properties
user posted image
В выпадающем списке Configuration выбираем All Configurations. Слева щёлкаем на General. Справа в поле Character Set выбираем пункт Not Set. Жмём ОК.

Прописываем необходимые заголовочные файлы в stdafx.h.
Примечание: Вы можете прописать их в файле .cpp вместе с функцией main, но лучше писать их в stdafx.h для ускорения повторной компиляции.
user posted image
Открываем stdafx.h. Там
Код
// Комментируем эти строки
/*
#include <stdio.h>
#include <tchar.h>
*/

// Дописываем эти строки
#include <ostream>
#include <iostream>



Пишем код программы.
user posted image
Открываем my first program.cpp (или как Вы назвали проект). Там
Код
int main(int argc, char *argv[]) // оригинальную строку модифицируем чтобы выглядела так
{
    // дописываем сюда вот это
    std::cout << "Hello world!" << std::endl;
    return 0;
}

Примечание: не удаляйте строку #include "stdafx.h" - она должна быть первой строкой в любом вашем .cpp файле, иначе будете получать ошибки во время сборки проекта.


Собираем проект.
user posted image
В главном меню(сверху) Build -> Build Solution
user posted image
1. Внизу видим что сборка началась (Build started). Она закончится спустя 2-10 секунд в зависимости от производительности компьютера.
2. Убеждаемся что наш проект собрался без ошибок и предупреждений: "my first program - 0 error(s), 0 warning(s)".
3. Убеждаемся что сборка закончилась успешно: "Build: 1 succeeded".
4. В случае наличия ошибок их можно посмотреть во вкладке Error List.

Запускаем проект.
user posted image
В главном меню(сверху) Debug -> Start Without Debugging
user posted image
Вы должны увидеть чёрное окно(называемое консолью) c текстом внутри "Hello world!".
Примечание: можно запустить Start Debugging, но тогда программа выполниться и сразу закроется. Это произойдёт настолько быстро, что Вы даже не заметите что она вывела.

Поздравляю, Вы написали, скомпилировали и запустили свою первую программу.

Добавлено @ 11:25
Надо что-то придумать, чтобы скороллбар находился под каждым скрином, а не внизу поста...

Назад к FAQ

Это сообщение отредактировал(а) bsa - 26.7.2011, 11:04


--------------------
If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas.
© George Bernard Shaw
PM Jabber   Вверх
vik5252
Дата 6.5.2008, 08:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 21
Регистрация: 4.5.2008

Репутация: нет
Всего: нет



Цитата(archimed7592 @  11.4.2008,  11:20 Найти цитируемый пост)
Открываем stdafx.h. Там

Код

// Комментируем эти строки
/*
#include <stdio.h>
#include <tchar.h>
*/

// Дописываем эти строки
#include <ostream>
#include <iostream>


Я здесь непонял, куда пропали строки 
Код

#pragma once
#include "targetver.h"

И нужны ли они в данном коде?
Также не совсем ясно, что означает указание "Открываем stdafx.h" ?
Ведь фактически файл stdafx.h и так уже открыт, мы только закоментировали пару строк и пару дописали, и  нажали на кнопку "сохранить" (как показано на картинке выше).


Это сообщение отредактировал(а) vik5252 - 6.5.2008, 08:10
PM MAIL   Вверх
anatox91
Дата 6.5.2008, 19:06 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


программист-самоучка
**


Профиль
Группа: Участник
Сообщений: 699
Регистрация: 12.1.2008
Где: ++Украина.Крым++

Репутация: 1
Всего: 13



Цитата(vik5252 @  6.5.2008,  08:03 Найти цитируемый пост)
Я здесь непонял, куда пропали строки 

никуда они не пропали,  просто в том листинге было написано только то, что надо изменить, а строки
Код

#pragma once
#include "targetver.h"

должны остаться


--------------------

The code is the design ©

Sony VAIO VGN-FW480J

user posted image
PM MAIL ICQ   Вверх
Romashkaz
Дата 5.9.2008, 19:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 33
Регистрация: 5.9.2008

Репутация: нет
Всего: нет



Блин, у меня он нашёл какие-то 2 ошибки и не хочет компилировать программку :(
PM MAIL   Вверх
SHraybikus
Дата 5.9.2008, 20:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 28
Регистрация: 4.9.2008

Репутация: нет
Всего: нет



Цитата(Romashkaz @ 5.9.2008,  19:52)
Блин, у меня он нашёл какие-то 2 ошибки и не хочет компилировать программку :(

попробуй ввести код иначе- проще:

#include <iostream>
  using namespace std;
  void main()
{
    cout<<" Hello Dos! "<<endl; //с переходом на новую строку
}
PM MAIL WWW ICQ   Вверх
Rpahut
Дата 5.9.2008, 23:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


0xdeadbeef
*


Профиль
Группа: Участник
Сообщений: 243
Регистрация: 9.4.2006

Репутация: нет
Всего: 7



Цитата

Блин, у меня он нашёл какие-то 2 ошибки и не хочет компилировать программку :(


Ошибки надо исправлять. Иначе без туториала с картинками ничего не сможешь написать.
Почитай чо его не устраивает и допиши.
--------------------
C/C++ GameDevRSS Раздела программирования игрOpenGL - уроки от NeHeКак продать идею?
PM MAIL   Вверх
Acer
Дата 6.9.2008, 07:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 652
Регистрация: 5.9.2007
Где: UA::DN

Репутация: нет
Всего: 8



Цитата(archimed7592 @ 11.4.2008,  11:20)
Примечание: не удаляйте строку #include "stdafx.h" - она должна быть первой строкой в любом вашем .cpp файле, иначе будете получать ошибки во время сборки проекта.

Одна из причин по которой я не люблю VS smile
PM MAIL   Вверх
vinter
Дата 6.9.2008, 10:50 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Explorer
****


Профиль
Группа: Завсегдатай
Сообщений: 2735
Регистрация: 1.4.2006
Где: Н.Новгород

Репутация: 8
Всего: 56



Цитата(Acer @  6.9.2008,  08:32 Найти цитируемый пост)
Одна из причин по которой я не люблю VS

ты просто не умеешь его готовить ©


--------------------
Мой блог
PM MAIL WWW   Вверх
Acer
Дата 6.9.2008, 12:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 652
Регистрация: 5.9.2007
Где: UA::DN

Репутация: нет
Всего: 8



Цитата(vinter @ 6.9.2008,  10:50)
Цитата(Acer @  6.9.2008,  08:32 Найти цитируемый пост)
Одна из причин по которой я не люблю VS

ты просто не умеешь его готовить ©

желания готовить в такой кухне у меня нет
PM MAIL   Вверх
cutwater
Дата 6.9.2008, 12:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 592
Регистрация: 24.6.2008

Репутация: 2
Всего: 10



Я в свое время на VS писал длительное время.... если руки ровные и с родным языком проблем нет, то все настраивается
потом открыл для себя рай линукса и gcc


--------------------
user posted image
PM MAIL   Вверх
Acer
Дата 6.9.2008, 14:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 652
Регистрация: 5.9.2007
Где: UA::DN

Репутация: нет
Всего: 8



хм. Если я правильно понял, то те, кто пишут не в VS и компилируют не VS компилятором имеют кривые руки?

Это сообщение отредактировал(а) Acer - 6.9.2008, 14:06
PM MAIL   Вверх
vinter
Дата 6.9.2008, 16:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Explorer
****


Профиль
Группа: Завсегдатай
Сообщений: 2735
Регистрация: 1.4.2006
Где: Н.Новгород

Репутация: 8
Всего: 56



Цитата(Acer @  6.9.2008,  15:04 Найти цитируемый пост)
хм. Если я правильно понял, то те, кто пишут не в VS и компилируют не VS компилятором имеют кривые руки?

нед, люди которые в ответ на 
Цитата(Acer @  6.9.2008,  08:32 Найти цитируемый пост)
Примечание: не удаляйте строку #include "stdafx.h"

пишут 
Цитата(Acer @  6.9.2008,  08:32 Найти цитируемый пост)
Одна из причин по которой я не люблю VS

имеют не совсем ровные руки ;)

Это сообщение отредактировал(а) vinter - 6.9.2008, 16:43


--------------------
Мой блог
PM MAIL WWW   Вверх
Acer
Дата 6.9.2008, 16:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 652
Регистрация: 5.9.2007
Где: UA::DN

Репутация: нет
Всего: 8



vinter, ну хз. Да, я с этим не разбирался. Возможно настроить студию так, чтобы их не использовать?
PM MAIL   Вверх
vinter
Дата 6.9.2008, 16:53 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Explorer
****


Профиль
Группа: Завсегдатай
Сообщений: 2735
Регистрация: 1.4.2006
Где: Н.Новгород

Репутация: 8
Всего: 56



да, в настройках проекта precompiled headers - off


--------------------
Мой блог
PM MAIL WWW   Вверх
Acer
Дата 6.9.2008, 17:38 (ссылка) |    (голосов:3) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 652
Регистрация: 5.9.2007
Где: UA::DN

Репутация: нет
Всего: 8



vinter, а почему, когда при создании проекта выбираешь "Не юзать прекомпилед хеадерс", они все равно есть?
еще минус в студии(2008), после установки она занимает около 3 Gb места на диске smile + Ставит непонятно зачем MSSQL Server. Хотя я не выбирал его при установке студии.
И еще один вопрос меня мучает:
к примеру, код:
Код

int _tmain(int argc, TCHAR* argv[], TCHAR* envp[]){
    _tprintf( _T( "строка" ) );
      ........
}

Зачем _tmain, _tprintf .... ? Что это за _t ? Микросовт зохотела выделиться? smile
PM MAIL   Вверх
vinter
Дата 6.9.2008, 18:14 (ссылка)  | (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Explorer
****


Профиль
Группа: Завсегдатай
Сообщений: 2735
Регистрация: 1.4.2006
Где: Н.Новгород

Репутация: 8
Всего: 56



Цитата(Acer @  6.9.2008,  18:38 Найти цитируемый пост)
vinter, а почему, когда при создании проекта выбираешь "Не юзать прекомпилед хеадерс", они все равно есть?

нет их, если ставишь.
Цитата(Acer @  6.9.2008,  18:38 Найти цитируемый пост)
еще минус в студии(2008), после установки она занимает около 3 Gb места на диске 

2Гб, при нынешних хардах это мелочь.
Цитата(Acer @  6.9.2008,  18:38 Найти цитируемый пост)
 Ставит непонятно зачем MSSQL Server

не хочешь не ставь

Цитата(Acer @  6.9.2008,  18:38 Найти цитируемый пост)
Зачем _tmain, _tprintf .... ? Что это за _t ? Микросовт зохотела выделиться? 

не хочешь не используй, это расширение MS.


--------------------
Мой блог
PM MAIL WWW   Вверх
Acer
Дата 6.9.2008, 18:18 (ссылка)  | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 652
Регистрация: 5.9.2007
Где: UA::DN

Репутация: нет
Всего: 8



странно... я ему одно, а он мне другое. ну ладно.
PM MAIL   Вверх
W4FhLF
Дата 7.9.2008, 07:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


found myself
****


Профиль
Группа: Участник Клуба
Сообщений: 2831
Регистрация: 2.12.2006

Репутация: 2
Всего: 121



Acer, тебе говорят о том, что студия достаточно хорошо поддерживает стандарты. Всё, что не входит в стандарт является расширениями самого компилятора и линкера, которые существуют для удобства или по каким-то другим причинам. Тебе никто не навязывает использование этих дополнений, надо только понимать, что ты делаешь. 


--------------------
"Бог умер" © Ницше
"Ницше умер" © Бог
PM ICQ   Вверх
Keler
Дата 14.9.2008, 11:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 14.9.2008

Репутация: нет
Всего: нет



Все замечательно, но когда уже запускаешь программу в папке Debug то она быстро выводиться и сразу же закрываться.Как исправить?
PM MAIL ICQ   Вверх
Acer
Дата 14.9.2008, 11:47 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 652
Регистрация: 5.9.2007
Где: UA::DN

Репутация: нет
Всего: 8



нах

Это сообщение отредактировал(а) Acer - 14.9.2008, 12:19
PM MAIL   Вверх
W4FhLF
Дата 14.9.2008, 11:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


found myself
****


Профиль
Группа: Участник Клуба
Сообщений: 2831
Регистрация: 2.12.2006

Репутация: 2
Всего: 121



Acer
Код

#include <stdio.h>
#include <iostream>

int main(int argc, char **argv){
    printf( "Hello World!\n" );
    std::cin.get();
    return 0;
}


Отлично. Вывод с помощью С-функции printf, а сразу после С++ streams. За такой стиль надо наказывать smile

Это сообщение отредактировал(а) W4FhLF - 14.9.2008, 11:52


--------------------
"Бог умер" © Ницше
"Ницше умер" © Бог
PM ICQ   Вверх
Acer
Дата 14.9.2008, 11:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 652
Регистрация: 5.9.2007
Где: UA::DN

Репутация: нет
Всего: 8



нах

Это сообщение отредактировал(а) Acer - 14.9.2008, 12:19
PM MAIL   Вверх
W4FhLF
Дата 14.9.2008, 12:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


found myself
****


Профиль
Группа: Участник Клуба
Сообщений: 2831
Регистрация: 2.12.2006

Репутация: 2
Всего: 121



Acer, тема про С++. Зачем тут С-style? 


Keler

Код

#include <iostream>

int main()
{
    std::cout << "Hello world!" << std::endl;
    std::cin.get();
    return 0;
}



--------------------
"Бог умер" © Ницше
"Ницше умер" © Бог
PM ICQ   Вверх
Keler
Дата 14.9.2008, 12:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 14.9.2008

Репутация: нет
Всего: нет



W4FhLF 
Большое спасибо
PM MAIL ICQ   Вверх
Keler
Дата 19.9.2008, 02:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 14.9.2008

Репутация: нет
Всего: нет



и еще один вопрос.Такая программа не запускаться на другом компьютере.Пишет "Приложение не было запущено, поскольку оно некорректно настроено.Повторная установка приложения может решить данную проблему.
За рание спасибо.
PM MAIL ICQ   Вверх
IKM2007
Дата 19.9.2008, 04:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Зима близко
**


Профиль
Группа: Участник
Сообщений: 702
Регистрация: 26.4.2008
Где: olmedreca

Репутация: 3
Всего: 40



Цитата(Keler @  19.9.2008,  02:21 Найти цитируемый пост)
и еще один вопрос.Такая программа не запускаться на другом компьютере.Пишет "Приложение не было запущено, поскольку оно некорректно настроено.Повторная установка приложения может решить данную проблему.За рание спасибо.

Какая программа?Можно по-конкретнее?
Экзешник, что-ли? smile 

Это сообщение отредактировал(а) IKM2007 - 19.9.2008, 05:02


--------------------
"К чёрту обстоятельства, я создаю возможности."
Брюс Ли
PM MAIL Skype   Вверх
Keler
Дата 19.9.2008, 13:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 14.9.2008

Репутация: нет
Всего: нет



извиняюсь, я имел виду вот эту программу Hello World.
PM MAIL ICQ   Вверх
W4FhLF
Дата 19.9.2008, 13:52 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


found myself
****


Профиль
Группа: Участник Клуба
Сообщений: 2831
Регистрация: 2.12.2006

Репутация: 2
Всего: 121



Нужно установить Redistributable Package версии соответствующий версии компилятора(студии)

Microsoft Visual C++ 2005 Redistributable Package (x86)
Microsoft Visual C++ 2008 Redistributable Package (x86)


--------------------
"Бог умер" © Ницше
"Ницше умер" © Бог
PM ICQ   Вверх
HappyLife
Дата 19.9.2008, 14:09 (ссылка)    | (голосов:3) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 642
Регистрация: 17.5.2006

Репутация: нет
Всего: 8



Acer, Я с тобой полностью согласен. 

На самом деле, VS есть за что не любить. Я читал книжку по С++ и сразу получись написать программу на Builder. Но вот пока не прочтешь документацию отдельно по VS фиг что получиться, для новичка.


PM MAIL   Вверх
W4FhLF
Дата 19.9.2008, 14:12 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


found myself
****


Профиль
Группа: Участник Клуба
Сообщений: 2831
Регистрация: 2.12.2006

Репутация: 2
Всего: 121



Цитата(HappyLife @  19.9.2008,  14:09 Найти цитируемый пост)
Я читал книжку по С++ и сразу получись написать программу на Builder. Но вот пока не прочтешь документацию отдельно по VS фиг что получиться, для новичка.


Если человек ниразу не видивший машину не сможет на ней поехать в первые 5 минут, значит машина фиговая?smile 

Это не критерий. 


--------------------
"Бог умер" © Ницше
"Ницше умер" © Бог
PM ICQ   Вверх
HappyLife
Дата 19.9.2008, 16:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 642
Регистрация: 17.5.2006

Репутация: нет
Всего: 8



smile 
W4FhLF, Никто не спорит. Но любить (не любить) есть нечто личное. И значить в этом плане критерии у всех свои. А значит критерий, для меня и для Acer=) 
PM MAIL   Вверх
Med
Дата 20.9.2008, 01:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 28
Регистрация: 2.9.2008

Репутация: 1
Всего: 1



Цитата(W4FhLF @ 19.9.2008,  13:52)
Нужно установить Redistributable Package версии соответствующий версии компилятора(студии)

а как узнать версию компилятора студии?
PM MAIL   Вверх
baltushka
Дата 8.6.2009, 22:00 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 21
Регистрация: 8.6.2009

Репутация: нет
Всего: нет



Не поленилась зарегестрироваться и сказать СПАСИБО!!!!!! людям, которые пишут ясно, четко, понятно и "по пунктикам". Не с первого раза, с исправлениями, что в комментариях, но наконец-то получилось запустить программу!! пусть такую простую и маленькую, но какой толк от кипы учебников и примеров, если я 3 дня уже не понимаю ошибок компилятора и никак не могу начать работу???

 Спасибо! Спасибо! Спасибо! Спасибо! СпасибО! за то, что расшифровываете "умные" вещи для желающих стать такими новичков!!
PM MAIL   Вверх
jonie
Дата 9.6.2009, 15:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 5613
Регистрация: 21.8.2005
Где: Владимир

Репутация: 6
Всего: 118



Цитата

а как узнать версию компилятора студии? 

C:\Program Files\Microsoft Visual Studio 8\VC>cl
Microsoft ® 32-bit C/C++ Optimizing Compiler Version 14.00.50727.762 for 80x86

из консоли "Visual Studio 20xx Command Prompt" (в пуске ищите).

только вам нужна не версия компилятора, а версия CRT- это библиотека runTime-овая. Для VS2005 это 8-ая версия, для 2008 - 9-ая, 2003-7ая, VC6 - шестая.




--------------------
Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет...
PM MAIL Jabber   Вверх
V0LT
Дата 5.7.2009, 04:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 91
Регистрация: 16.6.2009

Репутация: нет
Всего: 2



Сегодня сел за VS++ 2008 ... выходят первые билды доволен аки слон smile 
Делал в основном приложения в Delphi на "чистом" WinAPI - пригодилось  smile 

З.Ы. Как и в Коде Гир 2009 разработчики на юникод пошли ... не знаю как VS ... юникодных строк пока не касался ... но в Коде Гир 2009 они явно перемудрили ...

З.Ы.Ы После форумов типа forum.delphiexpert.ru хочется Delphi забыть как страшный сон ... плееры ... ламеры ... копипаст ... ужас какой smile 

Это сообщение отредактировал(а) V0LT - 5.7.2009, 04:44
PM MAIL ICQ   Вверх
SergMilk
Дата 30.7.2009, 23:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 25
Регистрация: 29.4.2009

Репутация: нет
Всего: нет



А вот вопрос, в Восьмой студии можно писать код, который будет потом и в шестой компилироваться?
Или все эти namespace несовместимы?
PM MAIL   Вверх
andrew_121
Дата 31.7.2009, 00:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодофей
****


Профиль
Группа: Завсегдатай
Сообщений: 3448
Регистрация: 3.1.2008

Репутация: 10
Всего: 33



SergMilk, Дело не в Студии или в компиляторе, дело в стандарте С/С++
С каким именно компилятором совместимость интересует?


--------------------
Удалил аккаунт. Прощайте!
PM MAIL   Вверх
maxim1000
Дата 31.7.2009, 08:39 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 3334
Регистрация: 11.1.2003
Где: Киев

Репутация: 1
Всего: 110



касательно precompiled headers:
всё-таки это средство оптимизации, и выбор его по умолчанию для всего проекта - оптимизация преждевременная
а пока размер проектов дойдёт до таких, когда она даёт заметный выигрыш, новичёк перестанет быть новичком smile

кроме того вот это:
Цитата(archimed7592 @  11.4.2008,  11:20 Найти цитируемый пост)
Вы можете прописать их в файле .cpp вместе с функцией main, но лучше писать их в stdafx.h для ускорения повторной компиляции.

- просто ужасно
такой подход формирует стиль, при котором компилируемость каждого cpp-шника зависит от содержимого соответствующего stdafx.h

ИМХО, лучше бы просто отключить precompiled headers при создании проекта, чтобы не грузить новичков информацией, на данный момент не нужной...


--------------------
qqq
PM WWW   Вверх
Леопольд
Дата 31.7.2009, 09:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 943
Регистрация: 17.6.2009

Репутация: 3
Всего: 13



Цитата(maxim1000 @ 31.7.2009,  08:39)
ИМХО, лучше бы просто отключить precompiled headers при создании проекта, чтобы не грузить новичков информацией, на данный момент не нужной...

Абсолютно согласен. Если сразу начать пихать все хидеры в предкомпилированный, то будет трудно понять как надо организовывать проект без оного.

Добавлено через 5 минут и 15 секунд
А вообще, микросовтовская студия - очень хорошая IDE, удобная. Но, для изучения С++ gcc подходит лучше, более строго придерживается стандарта.


--------------------
вопросов больше чем ответов
PM MAIL   Вверх
NFK
  Дата 22.3.2012, 11:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 22.3.2012
Где: Белово

Репутация: нет
Всего: нет



Всем привет!
Первый раз сел изучать C++. В универе сказали, что программы писать надо в "VS 2008". Тут нашел простую и понятно написанную инструкцию по настройке среды при первом запуске. Хочу сразу сказать огромное автору "СПАСИБО!". Все получилось с первого раза и без ошибок.  smile 
Но, как у новичка, сразу появились вопросы:

1. Почему-то у меня не отображаются скрины в посте автора, поэтому действовал по тексту.  smile  (также не отображаются иконки папок личного ящика в "Профиле"). Аватарки, смайлы, звездочки и прочие вещи видно. Возможно это из-за переезда форума.
2.

Цитата(archimed7592 @  11.4.2008,  15:20 Найти цитируемый пост)
Выключаем в настройках проекта Юникод.

Project -> Properties

В выпадающем списке Configuration выбираем All Configurations. Слева щёлкаем на General. Справа в поле Character Set выбираем пункт Not Set. Жмём ОК.


Сорри, что туплю, но для чего именно делается данное действие?

Это сообщение отредактировал(а) NFK - 22.3.2012, 11:03
PM MAIL Skype   Вверх
borisbn
Дата 22.3.2012, 14:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

Репутация: 21
Всего: 135



Цитата(NFK @  22.3.2012,  11:00 Найти цитируемый пост)
для чего именно делается данное действие?

Все WinAPI-функции, работающие со строками (почти все) описаны следующим образом:
Код

void SomeStringFuncW( const whar_t * str ) {
    ...
};
void SomeStringFuncA( const char * str ) {
    ... // в большинстве функций здесь строка преобразовывается в unicode-строку и передаётся в функцию ч суффиксом W
};
#ifdef UNICODE
    #define SomeStringFunc SomeStringFuncW
#else
    #define SomeStringFunc SomeStringFuncA
#endif

Т.к. огромное количество примеров в интернете работает с char*, с std::string и т.п., а также, если учесть, что новичкам не нужно думать о i18n, то указанное действие - вполне логичный совет. Не отключая unicode, такие конструкции не будут работать:
Код

std::string str;
cin >> str;
SomeWinAPIFunc( str.c_str() );

придётся писать одним из двух способов
Код

// 1
std::wstring str;
wcin >> str;
SomeWinAPIFunc( str.c_str() );
// 2
std::string str;
cin >> str;
SomeWinAPIFuncA( str.c_str() );

В общем - правильный совет для новичков.



--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
Страницы: (3) [Все] 1 2 3 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.2179 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.