вопросы по C++
Модератор: Модераторы разделов
-
sedition
- Сообщения: 556
- ОС: Gentoo/MacOSX/Windows Vista
вопросы по C++
Всем привет. Купил книгу Бьерна Страуструпа 'Язык програмирования С++'. Начал изучать. Написал программу из примера:
bool accept()
{
cout << "Continue? Y-yes/N-no";
char answer=0;
cin>>answer;
if (answer=='y')return true;
return false;
}
пытаюсь скомпилировать:
root@notebook:~/C++/example# c++ bool.cpp -o bool
bool.cpp: In function `bool accept()':
bool.cpp:3: error: `cout' undeclared (first use this function)
bool.cpp:3: error: (Each undeclared identifier is reported only once for each
function it appears in.)
bool.cpp:6: error: `cin' undeclared (first use this function)
Подскажите, что делаю не так. Спасибо
bool accept()
{
cout << "Continue? Y-yes/N-no";
char answer=0;
cin>>answer;
if (answer=='y')return true;
return false;
}
пытаюсь скомпилировать:
root@notebook:~/C++/example# c++ bool.cpp -o bool
bool.cpp: In function `bool accept()':
bool.cpp:3: error: `cout' undeclared (first use this function)
bool.cpp:3: error: (Each undeclared identifier is reported only once for each
function it appears in.)
bool.cpp:6: error: `cin' undeclared (first use this function)
Подскажите, что делаю не так. Спасибо
Спасибо!
-
Aectann
- Бывший модератор
- Сообщения: 3491
- Статус: ...
- ОС: OS X, GNU_и_не_только/Linux
Re: вопросы по C++
Взяли бы сначала что-нибудь попроще, например "ООП в С++" Роберта Лафоре(для новичков идеально) Еще есть ссылка рядом http://linuxforum.ru/index.php?showtopic=1823
Ошибка вот в чем: потоковые объекты cin, cout принадлежат пространству имен std, поэтому их надо писать так: std::cin, std::cout. Или включать в программу пространство имен:
using namespace std;
P.S. Вобщем, учите С++.
Ошибка вот в чем: потоковые объекты cin, cout принадлежат пространству имен std, поэтому их надо писать так: std::cin, std::cout. Или включать в программу пространство имен:
using namespace std;
P.S. Вобщем, учите С++.
My god... it's full of stars!...
-
sedition
- Сообщения: 556
- ОС: Gentoo/MacOSX/Windows Vista
Re: вопросы по C++
Что-то не получается:
root@notebook:~/C++/example# cat bool.cpp
bool accept()
{
std::cout << "Continue? Y-yes/N-no";
char answer=0;
std::cin>>answer;
if (answer=='y')return true;
return false;
}
root@notebook:~/C++/example# g++ bool.cpp
bool.cpp: In function `bool accept()':
bool.cpp:3: error: `cout' undeclared in namespace `std'
bool.cpp:6: error: `cin' undeclared in namespace `std'
root@notebook:~/C++/example# cat bool.cpp
bool accept()
{
std::cout << "Continue? Y-yes/N-no";
char answer=0;
std::cin>>answer;
if (answer=='y')return true;
return false;
}
root@notebook:~/C++/example# g++ bool.cpp
bool.cpp: In function `bool accept()':
bool.cpp:3: error: `cout' undeclared in namespace `std'
bool.cpp:6: error: `cin' undeclared in namespace `std'
Спасибо!
-
Shura
- Сообщения: 1537
- Статус: Оказывается и без KDE есть жизнь
- ОС: FreeBSD 8.0-RC2
-
Zeus
- Сообщения: 694
Re: вопросы по C++
1. Нужно иметь ввиду, что Страуструп в книге приводит выдержки кода, а не целый текст программы, который можно скомпилировать.
Т.е. чтобы привести это к компилируемому виду, нужно обрамить его код каким-то вспомогательным, а то и просто стандартным кодом (хотя б ф-ю main объявить).
2. В конкретном случае, нужно включить заголовочный файл iostream:
#include <iostream>
Т.е. чтобы привести это к компилируемому виду, нужно обрамить его код каким-то вспомогательным, а то и просто стандартным кодом (хотя б ф-ю main объявить).
2. В конкретном случае, нужно включить заголовочный файл iostream:
#include <iostream>
-
Asgard
- Сообщения: 215
- Статус: North Valfader
Re: вопросы по C++
не забывайте, что cin и cout находятся в пространстве имён std.
или просто
Код: Выделить всё
#include <iostream>
bool accept()
{
char answer = 0;
std::cout << "Continue? Y-yes/N-no" << std::endl;
std::cin>>answer;
if (answer=='y') return true;
return false;
}или просто
Код: Выделить всё
#include <iostream>
using namespace std;
// ...-
sedition
- Сообщения: 556
- ОС: Gentoo/MacOSX/Windows Vista
-
powerfox
- Сообщения: 458
-
Asgard
- Сообщения: 215
- Статус: North Valfader
Re: вопросы по C++
Такого нет ни в С, ни в C++.
видимо он имел ввиду <stdio.h>
-
powerfox
- Сообщения: 458
Re: вопросы по C++
(Asgard @ May 14 2006, в 18:34) писал(а):видимо он имел ввиду <stdio.h>
Да я понял, но человеку нужно было конкретное решение проблемы, к тому для cin и cout требуестся iostream. И привет купчинским!
-
oav
- Бывший модератор
- Сообщения: 296
-
Asgard
- Сообщения: 215
- Статус: North Valfader
Re: вопросы по C++
И привет купчинским!
хе-хе, спасибо
-
powerfox
- Сообщения: 458
-
Shura
- Сообщения: 1537
- Статус: Оказывается и без KDE есть жизнь
- ОС: FreeBSD 8.0-RC2