Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
A classe boyer_moore_horspool_searcher é um tipo de objeto de função que usa o algoritmo Boyer-Moore-Horspool para pesquisar uma sequência especificada no construtor do objeto. A pesquisa é feita dentro de outra sequência fornecida ao operador de chamada de função do objeto. Essa classe é passada como um parâmetro para uma das sobrecargas de std::search.
Sintaxe
template <
class RandomAccessIterator,
class Hash = hash<typename iterator_traits<RandomAccessIterator>::value_type>,
class BinaryPredicate = equal_to<>>
class boyer_moore_horspool_searcher
{
boyer_moore_horspool_searcher(
RandomAccessIterator pat_first,
RandomAccessIterator pat_last,
Hash hf = Hash(),
BinaryPredicate pred = BinaryPredicate());
template <class RandomAccessIterator2>
pair<RandomAccessIterator2, RandomAccessIterator2> operator()(
RandomAccessIterator2 first,
RandomAccessIterator2 last) const;
};
Membros
| Membro | Descrição |
|---|---|
| Construtor | |
| boyer_moore_horspool_searcher | Constrói uma instância do searcher. |
| Operadores | |
| operador() | Invoca a operação na sequência. |
Construtor boyer_moore_horspool_searcher
Constrói um objeto de função boyer_moore_horspool_searcher usando a sequência para pesquisa, um objeto de função de hash e um predicado de igualdade.
boyer_moore_horspool_searcher(
RandomAccessIterator pat_first,
RandomAccessIterator pat_last,
Hash hf = Hash(),
BinaryPredicate pred = BinaryPredicate());
Parâmetros
pat_first
O elemento inicial da sequência a ser pesquisada.
pat_last
O fim da sequência a ser pesquisada.
hf
Um objeto que pode ser chamado, usado para hash dos elementos de sequência.
pred
O predicado de comparação de igualdade opcional para elementos de sequência. Se um tipo de comparação de igualdade não for especificado, o padrão será std::equal_to.
Comentários
Gera qualquer exceção gerada pelo construtor de cópia dos tipos BinaryPredicate, Hash ou RandomAccessIterator ou o operador de chamada binaryPredicate ou Hash.
Essa classe é nova no C++17.
operador()
O operador de chamada do objeto de função. Pesquisa na sequência de argumentos [first, last) a sequência especificada para o construtor.
template <class ForwardIterator2> // C++17
pair<RandomAccessIterator2, RandomAccessIterator2> operator()(
RandomAccessIterator2 first,
RandomAccessIterator2 last) const;
Parâmetros
first
O elemento inicial da sequência dentro da qual haverá a pesquisa.
last
O fim da sequência dentro da qual haverá a pesquisa.
Comentários
Se o padrão de pesquisa [pat_first, pat_last) estiver vazio, retornará make_pair(first, first). Se o padrão de pesquisa não for encontrado, retornará make_pair(last, last). Caso contrário, retorna um par de iteradores para o início e o fim de uma sequência em [first, last) que é igual a [pat_first, pat_last) de acordo com o predicado pred.
Essa classe é nova no C++17.
Confira também
<functional>
Funções algorithm
Classe boyer_moore_searcher
std::search