Namespaces
Variants

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

From cppreference.net
constexpr void remove_suffix ( size_type n ) ;
(C++17부터)

뷰의 끝을 n 문자만큼 뒤로 이동합니다.

만약 n > size ( ) true 이면, 동작은 정의되지 않습니다.

(C++26 이전)

만약 n > size ( ) true 이면:

  • 구현이 hardened 된 경우, contract violation 이 발생합니다. 또한 계약 위반 핸들러가 "observe" 평가 의미론 하에 반환되면, 동작은 정의되지 않습니다.
  • 구현이 hardened되지 않은 경우, 동작은 정의되지 않습니다.
(C++26 이후)

목차

매개변수

n - 뷰의 끝에서 제거할 문자 수

복잡도

상수.

예제

#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';
}

출력:

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

참고 항목

시작 지점을 앞으로 이동하여 뷰를 축소합니다
(public member function)