os_includes


Searches for one container in another container.

A helper algorithm for includes() . Searches for one container in another container. Returns true if the container c1 is embedded in container c2 . The first version assumes that both sequences are already sorted using operator< . The second version assumes that both sequences are already sorted using compare .

Library

Helper<ToolKit>

Declaration

#include <ospace/helper/helpalgo.h>

template< class Container >
bool os_includes( const Container& c1, const Container& c2 )

template< class Container, class Compare >
bool os_includes
  (
  const Container& c1,
  const Container& c2,
  Compare compare
  )
  
Example <ospace/helper/examples/oincl0.cpp>
#include <iostream>
#include <vector>
#include <ospace/helper.h>

int numbers1[ 5 ] = { 1, 2, 3, 4, 5 };
int numbers2[ 5 ] = { 1, 2, 4, 8, 16 };
int numbers3[ 2 ] = { 4, 8 };

void
main()
  {
  vector< int > v1( numbers1, numbers1 + 5 );
  vector< int > v2( numbers2, numbers2 + 5 );
  vector< int > v3( numbers3, numbers3 + 2 );

  if ( os_includes( v1, v3 ) )
    cout << "numbers1 includes numbers3\n";
  else
    cout << "numbers1 does not include numbers3\n";

  if ( os_includes( v2, v3 ) )
    cout << "numbers2 includes numbers3\n";
  else
    cout << "numbers2 does not include numbers3\n";
  }

numbers1 does not include numbers3
numbers2 includes numbers3

Copyright©1994-2026 Recursion Software LLC
All Rights Reserved - For use by licensed users only.