Namespaces
Variants
Actions

std::basic_string_view<CharT,Traits>::remove_suffix

From cppreference.com
 
 
 
std::basic_string_view
 
constexpr void remove_suffix( size_type n );
(since C++17)

Moves the end of the view back by n characters.

If n > size() is true, the behavior is undefined.

(until C++26)

If n > size() is true:

  • If the implementation is hardened, a contract violation occurs. Moreover, if the contract-violation handler returns under "observe" evaluation semantic, the behavior is undefined.
  • If the implementation is not hardened, the behavior is undefined.
(since C++26)

[edit] Parameters

n - number of characters to remove from the end of the view

[edit] Complexity

Constant.

[edit] Example

Run this code
#include <iostream>
#include <string_view>
 
int main()
{
 char arr[] = {'a', 'b', 'c', 'd', '0円', '0円', '0円'};
 std::string_view v(arr, sizeof arr);
 auto trim_pos = v.find('0円');
 if (trim_pos != v.npos)
 v.remove_suffix(v.size() - trim_pos);
 std::cout << "Array: '" << arr << "', size=" << sizeof arr << '\n'
 << "View : '" << v << "', size=" << v.size() << '\n';
}

Output:

Array: 'abcd', size=7
View : 'abcd', size=4

[edit] See also

shrinks the view by moving its start forward
(public member function) [edit]
Retrieved from "https://en.cppreference.com/mwiki/index.php?title=cpp/string/basic_string_view/remove_suffix&oldid=182334"

AltStyle によって変換されたページ (->オリジナル) /