Не компилируется программа, Ошибки в коде или не правильная конфигурация Qt Creator? |
Здравствуйте, гость ( Вход | Регистрация )
Не компилируется программа, Ошибки в коде или не правильная конфигурация Qt Creator? |
Dima2387 |
2.2.2013, 5:28
Сообщение
#1
|
Студент Группа: Участник Сообщений: 19 Регистрация: 31.1.2013 Пользователь №: 3696 Спасибо сказали: 0 раз(а) Репутация: 0 |
Читаю книгу "Стефан Р. Дэвис C++ для чайников (4-е издание, 2003)" В ней первый же пример это написание программы переводящей температуру из градусов по цельсию в градусы по фаренгейту. Однако у меня она не компилируется( Причем это уже не первая книга примеры которой у меня не работают, уже перепробовал книги три, но вообщем-то суть не в этом) суть в том что поменяв две строки все заработало.
вот как было в примере из книги(строка номер 4): int main(int nNumberofArgs, char* pszArgs[]) вот как сделал я на основе примера хелло ворд который появляется сам когда создаешь новый проект си++ в qt designer (изменения в строке 4 и добавление новой строки перед ней) using namespace std; int main() Почему не работает пример из книги? |
|
|
ilyabvt |
2.2.2013, 10:47
Сообщение
#2
|
Активный участник Группа: Участник Сообщений: 297 Регистрация: 23.6.2011 Пользователь №: 2765 Спасибо сказали: 45 раз(а) Репутация: 3 |
Служит для включения пространства имен std. Без этого нужно было бы писать std::cin, std::cout и т.д. И еще, объявляете переменную nNFactor, а используете nFactor. Сообщение отредактировал ilyabvt - 2.2.2013, 10:47 |
|
|
Iron Bug |
2.2.2013, 17:34
Сообщение
#3
|
Профессионал Группа: Модератор Сообщений: 1611 Регистрация: 6.2.2009 Из: Yekaterinburg Пользователь №: 533 Спасибо сказали: 219 раз(а) Репутация: 12 |
пространство имён std было введено в относительно "новых" стандартах C++ (кажется, с С99, если не ошибаюсь). до этого стандартные библиотеки назывались с расширением .h и все их функции и объекты были объявлены в общем пространстве имён.
то есть, теоретически можно было включать #include <header.h> и не использовать пространство std. потом это объявили устаревшим форматом и теперь заголовки включаются как #include <header> и обязательно использование пространства имён std. для примеров лучше брать новые книги по С++. в старых могут быть несоответствия с новыми стандартами. |
|
|
Dima2387 |
2.2.2013, 17:44
Сообщение
#4
|
Студент Группа: Участник Сообщений: 19 Регистрация: 31.1.2013 Пользователь №: 3696 Спасибо сказали: 0 раз(а) Репутация: 0 |
ilyabvt Спасибо!
Iron Bug Большое спасибо, теперь понятно почему не идут примеры из книг если переписывать их оттуда 1 в 1. |
|
|
Текстовая версия | Сейчас: 26.12.2024, 20:44 |