Форум программистов, компьютерный форум CyberForum.ru

std::copy - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 50, средняя оценка - 4.64
Serg046
21 / 21 / 2
Регистрация: 07.01.2010
Сообщений: 376
04.06.2012, 21:13     std::copy #1
C++
1
2
3
typedef std::list<size_t> Path;
Path::iterator _it;
Path path;
C++
1
std::copy( _it, path.end(), std::ostream_iterator<size_t>( std::cout, " " ));
Эта вещь мне выводит циферки в консоль.
Как мне это куда нить записать? С итераторами не сталкивался пока...
Пробовал так, но что-то не вышло
C++
1
2
Path out;
std::copy( _it, path.end(), out.begin());
Лучшие ответы (1)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Jupiter
Каратель
Эксперт C++
6542 / 3962 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
04.06.2012, 21:27     std::copy #2

Не по теме:

Цитата Сообщение от Serg046 Посмотреть сообщение
Как мне это куда нить записать?
в блокнот запиши



Добавлено через 51 секунду
непонятно что и куда записать, описывайте проблему точнее
Serg046
21 / 21 / 2
Регистрация: 07.01.2010
Сообщений: 376
05.06.2012, 00:17  [ТС]     std::copy #3
Хочу не в консоль выводить, а записать куда нибудь, допустим в строку или вектор, или в лист, куда угодно.
DU
1477 / 1053 / 45
Регистрация: 05.12.2011
Сообщений: 2,279
05.06.2012, 00:22     std::copy #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
std::ostream_iterator - копирование в стрим
std::front_inserter - добавление в начало контейнеров
std::back_inserter - добавление в конец контейнеров
std::inserter - добавление в контейнер
gray_fox
What a waste!
 Аватар для gray_fox
1244 / 1127 / 53
Регистрация: 21.04.2012
Сообщений: 2,350
Завершенные тесты: 3
05.06.2012, 00:23     std::copy #5
back_inserter:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
#include <list>
#include <vector>
#include <algorithm>
#include <iterator>
 
 
int main() {
   std::list<size_t> list = {1, 2, 3, 4, 5};
   std::vector<size_t> vector;
   std::copy(std::begin(list), std::end(list), std::back_inserter(vector));
   std::copy(std::begin(vector), std::end(vector), std::ostream_iterator<size_t>(std::cout, " "));
   std::cout << std::endl;
}
http://liveworkspace.org/code/1b7748...5e794ebb0b0b42
Serg046
21 / 21 / 2
Регистрация: 07.01.2010
Сообщений: 376
05.06.2012, 00:29  [ТС]     std::copy #6
Да спасибо, уже понял. Начинаю любить stl полегоньку.
Yandex
Объявления
05.06.2012, 00:29     std::copy
Ответ Создать тему
Опции темы

Текущее время: 20:03. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru