| Home | Libraries | People | FAQ | More

## Function erase_tail_copy

boost::algorithm::erase_tail_copy — Erase tail algorithm.

## Synopsis

    template<typename OutputIteratorT, typename RangeT>
      OutputIteratorT
      erase_tail_copy(OutputIteratorT Output, const RangeT & Input, int N);
    template<typename SequenceT>
      SequenceT erase_tail_copy(const SequenceT & Input, int N);

## Description

Remove the tail from the input. The tail is a suffix of a sequence of given size. If the sequence is shorter then required, the whole string is considered to be the tail. The result is a modified copy of the input. It is returned as a sequence or copied to the output iterator.

Parameters: |
`Input` | An input string
`N` | Length of the head. For N>=0, at most N characters are extracted. For N<0, size(Input)-|N| characters are extracted.
`Output` | An output iterator to which the result will be copied
Returns: | An output iterator pointing just after the last inserted character or a modified copy of the input
Notes: | The second variant of this function provides the strong exception-safety guarantee