Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 07.11.2009, 19:34   #1
AxenicX
Пользователь
 
Регистрация: 21.09.2009
Сообщений: 65
По умолчанию Не компилируется пример из книжки

Изучаю книгу C++ Стандартная библиотека. Для професионалов.
Пытаюсь скомпилиривать слебующий пример:
Цитата:
#include <iostream>
#include <string>
#include <algorithm>
#include <set>
using namespace std;

int main()
{
set<string> coll((istream_iterator<string>(cin) ),(istream_iterator<string>()));
cout << "Viviod: ";
copy(coll.begin().coll.end(),ostrea m_iterator<string>(cout,"\n"));
return 0;
}
Работаю в code::Blocks, ошибки при компиляции выдает следующие:
Цитата:
D:\my program\most\main.cpp||In function `int main()':|
D:\my program\most\main.cpp|9|error: `istream_iterator' was not declared in this scope|
D:\my program\most\main.cpp|9|error: expected primary-expression before '>' token|
D:\my program\most\main.cpp|9|error: expected primary-expression before '>' token|
D:\my program\most\main.cpp|9|error: expected primary-expression before ')' token|
D:\my program\most\main.cpp|11|error: 'struct std::_Rb_tree_const_iterator<std::s tring>' has no member named 'coll'|
D:\my program\most\main.cpp|11|error: `ostream_iterator' was not declared in this scope|
D:\my program\most\main.cpp|11|error: expected primary-expression before '>' token|
D:\my program\most\main.cpp|11|warning: left-hand operand of comma has no effect|
D:\my program\most\main.cpp|11|warning: unused variable 'ostream_iterator'|
||=== Build finished: 7 errors, 2 warnings ===|
Раньше примеры из этой книжки не компилировал, это первый и такой облом.
AxenicX вне форума Ответить с цитированием
Старый 07.11.2009, 19:58   #2
Sparky
Участник клуба
 
Аватар для Sparky
 
Регистрация: 15.05.2009
Сообщений: 1,222
По умолчанию

а разве главная функция возвращает результат? вроде всегда void main
Единственное, что ограничивает полет мысли программиста-компилятор
Sparky вне форума Ответить с цитированием
Старый 07.11.2009, 20:02   #3
AxenicX
Пользователь
 
Регистрация: 21.09.2009
Сообщений: 65
По умолчанию

Если void то ругается ещё больше, попробуй скомпилировать этот кусок кода у себя, и напиши что получилось. Насколько я понимаю этот код должен считывать значения с потока ввода и выводить их.
AxenicX вне форума Ответить с цитированием
Старый 07.11.2009, 20:04   #4
counter
Участник клуба
 
Регистрация: 18.10.2008
Сообщений: 1,409
По умолчанию

чтоб скомпилировалось

Код:
#include <iostream>
#include <string>
#include <algorithm>
#include <set>
using namespace std;

int main()
{
set<string> coll((istream_iterator<string>(cin) ),(istream_iterator<string>()));
cout<<"Viviod: "; // << без пробелов
copy(coll.begin(),coll.end(),ostream_iterator<string>(cout,"\n"));
return 0;
}
counter вне форума Ответить с цитированием
Старый 07.11.2009, 20:08   #5
AxenicX
Пользователь
 
Регистрация: 21.09.2009
Сообщений: 65
По умолчанию

Точку на запятую исправил, все остальное так как ты написал. ostream_iterator - написанно правильно, это при копирование на сайт пробел появился. Компилятор ругается на самой первой строчки где начинается функция main. counter а ты у себя скомпилировал? Что за СП?
AxenicX вне форума Ответить с цитированием
Старый 07.11.2009, 20:24   #6
counter
Участник клуба
 
Регистрация: 18.10.2008
Сообщений: 1,409
По умолчанию

какая ошибка?

у меня вижуал
counter вне форума Ответить с цитированием
Старый 07.11.2009, 20:26   #7
AxenicX
Пользователь
 
Регистрация: 21.09.2009
Сообщений: 65
По умолчанию

Цитата:
D:\my program\most\main.cpp||In function `int main()':|
D:\my program\most\main.cpp|9|error: `istream_iterator' was not declared in this scope|
D:\my program\most\main.cpp|9|error: expected primary-expression before '>' token|
D:\my program\most\main.cpp|9|error: expected primary-expression before '>' token|
D:\my program\most\main.cpp|9|error: expected primary-expression before ')' token|
D:\my program\most\main.cpp|11|error: `ostream_iterator' was not declared in this scope|
D:\my program\most\main.cpp|11|error: expected primary-expression before '>' token|
D:\my program\most\main.cpp|11|warning: left-hand operand of comma has no effect|
D:\my program\most\main.cpp|11|warning: unused variable 'ostream_iterator'|
||=== Build finished: 6 errors, 2 warnings ===|
Вот ошибка.
AxenicX вне форума Ответить с цитированием
Старый 07.11.2009, 22:07   #8
AxenicX
Пользователь
 
Регистрация: 21.09.2009
Сообщений: 65
По умолчанию

Тупорылая книга! Оказывается этот пример был не корректен, так как не был влючон файл
Код:
#include <iterator>
Зато когда дальше начал читать, был дан другой пример где все работало стоило только включить вышеприведенный файл.
AxenicX вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не компилируется модуль Лубышев Помощь студентам 6 11.03.2013 15:40
Компилируется,но не выполняется. Lunex.08 C++ Builder 6 19.11.2009 12:17
Не компилируется программа VladimirVB Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 4 14.10.2008 23:22
delphi. Не компилируется! dimple Помощь студентам 2 30.04.2008 11:00
Разработка прототипа электронной телефонной книжки. Necrom Помощь студентам 1 03.02.2008 21:43