Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.58/88: Рейтинг темы: голосов - 88, средняя оценка - 4.58
интересующийся
311 / 282 / 93
Регистрация: 25.09.2010
Сообщений: 1,056

Как передать итератор в качестве параметра функции?

17.03.2013, 21:35. Показов 18901. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
хочу вызвать функцию как-то так:
C++
1
show_string(std::cout, line.begin(), line.end());
в качестве line.begin() и line.end() выступают итераторы на std::list<std::string> line;
Как я не пытался определить параметры для функции, ничего не получается:
C++
1
2
void show_string(std::ostream& stream, std::list<std::string>::const_iterator &i,
        std::list<std::string>::const_iterator &j); // так не работает
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
17.03.2013, 21:35
Ответы с готовыми решениями:

Как передать слово в качестве параметра функции?
Возможно ли чтобы функция принимала слово, вывела его , и рассчитала его длину? void write(char* word) { cout &lt;&lt;...

Как передать файл в качестве параметра функции
Как передать файл в качестве параметра функции? Напишите пожалуйста на примере функции для вывода файла на экран Буду очень благодарна

Функции: Как передать в качестве параметра число?
Как передать в качестве параметра число? с++

5
DU
1500 / 1146 / 165
Регистрация: 05.12.2011
Сообщений: 2,279
17.03.2013, 21:41
C++
1
2
void show_string(std::ostream& stream, std::list<std::string>::const_iterator begin,
        std::list<std::string>::const_iterator end);
если не работает, то ошибки в студию. и тип line укажите, а то вдруг это у вас не список строк.
можно еще шаблонную функцию замутить, которая будет работать с любыми итераторами, не только с итераторами от списка.
C++
1
2
template <typename Iter>
void show_string(std::ostream& stream, Iter begin, Iter end);
а еще, возможно пригодится функция вывода списка целиком:
C++
1
void show_string(std::ostream& stream, const std::list<std::string>& lst);
1
go
Эксперт С++
3646 / 1378 / 243
Регистрация: 16.04.2009
Сообщений: 4,526
17.03.2013, 21:48
xtorne21st,
C++
1
2
void Show(std::list<std::string>::const_iterator bgn, 
   std::list<std::string>::const_iterator end);
1
 Аватар для SummerRain
328 / 327 / 92
Регистрация: 16.12.2012
Сообщений: 544
17.03.2013, 21:56
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
#include <vector>
#include <list>
 
void show_string(std::ostream& stream, std::list<std::string>::const_iterator &i,
        std::list<std::string>::const_iterator &j) {
            for (; i != j; ++i)
                std::cout << i->c_str() << " ";
}
 
int main()
{
    std::list<std::string> line;
    line.push_back("No");
    line.push_back("No");
    line.push_back("I");
    line.push_back("will");
    line.push_back("never");
    line.push_back("forget");
    show_string(std::cout, line.begin(), line.end());
    system("PAUSE>0");
    return 0;
}
0
интересующийся
311 / 282 / 93
Регистрация: 25.09.2010
Сообщений: 1,056
17.03.2013, 22:05  [ТС]
go, Это весьма странно, я как раз начал именно с вашего варианта, но у меня не работало. Значит где-то тупанул.

DU, за шаблон спасибо большое.

Добавлено через 3 минуты
SummerRain, что-то у меня вариант с ссылкой не работает
0
go
Эксперт С++
3646 / 1378 / 243
Регистрация: 16.04.2009
Сообщений: 4,526
17.03.2013, 22:15
Цитата Сообщение от xtorne21st Посмотреть сообщение
SummerRain, что-то у меня вариант с ссылкой не работает
У него похоже студия. Дело в том, что нужно по значению передавать.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
17.03.2013, 22:15
Помогаю со студенческими работами здесь

Как передать функции в качестве параметра исполняемый код
Собственно сабж. int main() { z1 = x*x*x+2*x+2; func(z1); } int func()

Как передать метод класса в качестве параметра функции
Это типа &quot;бот&quot;, он работает (&quot;шагает&quot; по заданному полю) #include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;time.h&gt; ...

Можно ли в качестве параметра функции передать другую функцию?
В ниже представленной программе функция returnMax находит в массиве максимальный элемент и возвращает его. returnMin - делает тоже самое,...

Как передать массив структур в функцию в качестве параметра, чтобы изменения в функции меняли исходный массив?
Допустим есть структура struct Base { int a; int b; int c; }; В основном методе main() объявим массив...

Как передать функцию в качестве параметра?
Помгите плиз, не получается передать одну функцию как параметр другой я пробовал так: в заголовочном файле: typedef double...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru