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

find_end

Boost , Chapter 1. Range 2.0 , Non-mutating algorithms

Boost C++ LibrariesHomeLibrariesPeopleFAQMore

PrevUpHomeNext
Prototype

template<class ForwardRange1, class ForwardRange2>
typename range_iterator<ForwardRange1>::type
find_end(ForwardRange1& rng1, const ForwardRange2& rng2);
template<
    class ForwardRange1,
    class ForwardRange2,
    class BinaryPredicate
    >
typename range_iterator<ForwardRange1>::type
find_end(ForwardRange1& rng1, const ForwardRange2& rng2, BinaryPredicate pred);
template<
    range_return_value re,
    class ForwardRange1,
    class ForwardRange2
    >
typename range_return<ForwardRange1, re>::type
find_end(ForwardRange1& rng1, const ForwardRange2& rng2);
template<
    range_return_value re,
    class ForwardRange1,
    class ForwardRange2,
    class BinaryPredicate
    >
typename range_return<ForwardRange1, re>::type
find_end(ForwardRange1& rng1, const ForwardRange2& rng2, BinaryPredicate pred);

Description

Версии<find_end>, возвращающие итератор, возвращают итератор к началу последней подпоследовательности, равной<rng2>в пределах<rng1>. Равенство определяется<operator==>для непредикатных версий<find_end>и удовлетворяет<pred>в предикатных версиях. Версии<find_end>, которые возвращают<range_return>, определяют<found>таким же образом, как и возвращенный итератор, описанный выше.

Definition

Defined in the header file boost/range/algorithm/find_end.hpp

Requirements

For the non-predicate versions:

  • <ForwardRange1>является модельюПередний диапазонПонятие.
  • <ForwardRange2>является модельюпередового диапазонаКонцепт.
  • <ForwardRange1>Тип значения является моделью<EqualityComparableConcept>.
  • <ForwardRange2>Тип значения является моделью<EqualityComparableConcept>.
  • Объекты типа стоимости<ForwardRange1>можно сравнить для равенства с объектами типа стоимости<ForwardRange2>.

For the predicate versions:

  • <ForwardRange1>является модельюПередний диапазонПонятие.
  • <ForwardRange2>является модельюпередового диапазонаКонцепт.
  • <BinaryPredicate>является образцом<BinaryPredicateConcept>.
  • <ForwardRange1>Тип значения преобразуется в<BinaryPredicate>первый тип аргумента.
  • <ForwardRange2>Тип значения преобразуется во второй тип аргумента<BinaryPredicate>.
Complexity

Количество сравнений пропорционально<distance(rng1)*distance(rng2)>. Если и<ForwardRange1>, и<ForwardRange2>являются моделями<BidirectionalRangeConcept>, то средняя сложность линейна, а наихудший случай<distance(rng1)*distance(rng2)>.


PrevUpHomeNext

Статья find_end раздела Chapter 1. Range 2.0 Non-mutating algorithms может быть полезна для разработчиков на c++ и boost.




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



:: Главная :: Non-mutating algorithms ::


реклама


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

Время компиляции файла: 2024-08-30 11:47:00
2025-05-20 08:21:36/0.0057981014251709/0