Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
Разработка программного обеспечения

Function combine

Boost , Chapter 1. Range 2.0 , Utilities

Boost C++ LibrariesHomeLibrariesPeopleFAQMore

PrevUpHomeNext

iterator_rangezip_iterator от Потолок. Библиотека итераторов. .

Synopsis

namespace boost
{
    namespace range
    {
template<typename IterTuple>
class combined_range
    : public iterator_range<zip_iterator<IterTuple> >
{
public:
    combined_range(IterTuple first, IterTuple last);
};
template<typename... Ranges>
auto combine(Ranges&&... rngs) ->
    combined_range<decltype(boost::make_tuple(boost::begin(rngs)...))>
    } // namespace range
} // namespace boost

  • Предварительное условие:Для каждого типа<r>в<Ranges>,<r>является модельюSingle Pass Rangeили лучше.
  • [ORIG_END] -->
  • Возвращенная категория:Минимальная категория диапазона каждого диапазона<r>в<Ranges>.
Example

#include <boost/range/combine.hpp>
#include <boost/foreach.hpp>
#include <iostream>
#include <vector>
#include <list>
int main(int, const char*[])
{
    std::vector<int> v;
    std::list<char> l;
    for (int i = 0; i < 5; ++i)
    {
        v.push_back(i);
        l.push_back(static_cast<char>(i) + 'a');
    }
    int ti;
    char tc;
    BOOST_FOREACH(boost::tie(ti, tc), boost::combine(v, l))
    {
        std::cout << '(' << ti << ',' << tv << ')' << '\n';
    }
    return 0;
}

Это приводит к выходу:

(0,a)
(1,b)
(2,c)
(3,d)
(4,e)


PrevUpHomeNext

Статья Function combine раздела Chapter 1. Range 2.0 Utilities может быть полезна для разработчиков на c++ и boost.




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.



:: Главная :: Utilities ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-08-30 11:47:00
2025-05-19 21:02:44/0.0079128742218018/1