Movatterモバイル変換


[0]ホーム

URL:


cppreference.com
Namespaces
Variants
    Actions

      Standard library header <inplace_vector> (C++26)

      From cppreference.com
      <cpp‎ |header
       
       
      Standard library headers
       

      This header is part of thecontainers library.

      Contents

      Includes

      (C++20)
      Three-way comparison operator support[edit]
      std::initializer_list class template[edit]

      Classes

      resizable, fixed capacity, inplace contiguous array
      (class template)[edit]

      Functions

      erases all elements satisfying specific criteria
      (function template)[edit]

      [edit]Synopsis

      // mostly freestanding#include <compare>#include <initializer_list> namespace std{// class template inplace_vectortemplate<class T, size_t N>class inplace_vector;// partially freestanding // erasuretemplate<class T, size_t N,class U= T>constexprtypename inplace_vector<T, N>::size_type erase(inplace_vector<T, N>& c,const U& value);template<class T, size_t N,class Predicate>constexprtypename inplace_vector<T, N>::size_type erase_if(inplace_vector<T, N>& c,                                                              Predicate pred);}

      [edit]Class templatestd::inplace_vector

      namespace std{template<class T, size_t N>class inplace_vector{public:// types:using value_type= T;using pointer= T*;using const_pointer=const T*;using reference= value_type&;using const_reference=const value_type&;using size_type= size_t;using difference_type= ptrdiff_t;using iterator=/* implementation-defined */;using const_iterator=/* implementation-defined */;using reverse_iterator=std::reverse_iterator<iterator>;using const_reverse_iterator=std::reverse_iterator<const_iterator>; // construct/copy/destroyconstexpr inplace_vector()noexcept;constexprexplicit inplace_vector(size_type n);// freestanding-deletedconstexpr inplace_vector(size_type n,const T& value);// freestanding-deletedtemplate<class InputIter>constexpr inplace_vector(InputIter first, InputIter last);// freestanding-deletedtemplate<container-compatible-range<T> R>constexpr inplace_vector(from_range_t, R&& rg);// freestanding-deletedconstexpr inplace_vector(const inplace_vector&);constexpr inplace_vector(inplace_vector&&)noexcept(      N==0|| is_nothrow_move_constructible_v<T>);constexpr inplace_vector(initializer_list<T> il);// freestanding-deletedconstexpr ~inplace_vector();constexpr inplace_vector& operator=(const inplace_vector& other);constexpr inplace_vector& operator=(inplace_vector&& other)noexcept(      N==0||(is_nothrow_move_assignable_v<T>&& is_nothrow_move_constructible_v<T>));constexpr inplace_vector& operator=(initializer_list<T>);// freestanding-deletedtemplate<class InputIter>constexprvoid assign(InputIter first, InputIter last);// freestanding-deletedtemplate<container-compatible-range<T> R>constexprvoid assign_range(R&& rg);// freestanding-deletedconstexprvoid assign(size_type n,const T& u);// freestanding-deletedconstexprvoid assign(initializer_list<T> il);// freestanding-deleted // iteratorsconstexpr iterator begin()noexcept;constexpr const_iterator begin()constnoexcept;constexpr iterator end()noexcept;constexpr const_iterator end()constnoexcept;constexpr reverse_iterator rbegin()noexcept;constexpr const_reverse_iterator rbegin()constnoexcept;constexpr reverse_iterator rend()noexcept;constexpr const_reverse_iterator rend()constnoexcept; constexpr const_iterator cbegin()constnoexcept;constexpr const_iterator cend()constnoexcept;constexpr const_reverse_iterator crbegin()constnoexcept;constexpr const_reverse_iterator crend()constnoexcept; // size/capacityconstexprbool empty()constnoexcept;constexpr size_type size()constnoexcept;staticconstexpr size_type max_size()noexcept;staticconstexpr size_type capacity()noexcept;constexprvoid resize(size_type sz);// freestanding-deletedconstexprvoid resize(size_type sz,const T& c);// freestanding-deletedstaticconstexprvoid reserve(size_type n);// freestanding-deletedstaticconstexprvoid shrink_to_fit()noexcept; // element accessconstexpr reference operator[](size_type n);constexpr const_reference operator[](size_type n)const;constexpr reference at(size_type n);// freestanding-deletedconstexpr const_reference at(size_type n)const;// freestanding-deletedconstexpr reference front();constexpr const_reference front()const;constexpr reference back();constexpr const_reference back()const; // data accessconstexpr T* data()noexcept;constexprconst T* data()constnoexcept; // modifierstemplate<class...Args>constexpr reference emplace_back(Args&&...args);// freestanding-deletedconstexpr reference push_back(const T& x);// freestanding-deletedconstexpr reference push_back(T&& x);// freestanding-deletedtemplate<container-compatible-range<T> R>constexprvoid append_range(R&& rg);// freestanding-deletedconstexprvoid pop_back(); template<class...Args>constexpr pointer try_emplace_back(Args&&...args);constexpr pointer try_push_back(const T& x);constexpr pointer try_push_back(T&& x);template<container-compatible-range<T> R>constexprranges::borrowed_iterator_t<R> try_append_range(R&& rg); template<class...Args>constexpr reference unchecked_emplace_back(Args&&...args);constexpr reference unchecked_push_back(const T& x);constexpr reference unchecked_push_back(T&& x); template<class...Args>constexpr iterator emplace(const_iterator position,                               Args&&...args);// freestanding-deletedconstexpr iterator insert(const_iterator position,const T& x);// freestanding-deletedconstexpr iterator insert(const_iterator position, T&& x);// freestanding-deletedconstexpr iterator insert(const_iterator position,                              size_type n,// freestanding-deletedconst T& x);template<class InputIter>constexpr iterator insert(const_iterator position,// freestanding-deleted                              InputIter first,                              InputIter last);template<container-compatible-range<T> R>constexpr iterator insert_range(const_iterator position,                                    R&& rg);// freestanding-deletedconstexpr iterator insert(const_iterator position,// freestanding-deleted                              initializer_list<T> il);constexpr iterator erase(const_iterator position);constexpr iterator erase(const_iterator first, const_iterator last);constexprvoid swap(inplace_vector& x)noexcept(N==0||(is_nothrow_swappable_v<T>&&                                                     is_nothrow_move_constructible_v<T>));constexprvoid clear()noexcept; constexprfriendbool operator==(const inplace_vector& x,const inplace_vector& y);constexprfriend/*synth-three-way-result*/<T> operator<=>(const inplace_vector& x,const inplace_vector& y);constexprfriendvoid swap(inplace_vector& x, inplace_vector& y)noexcept(      N==0||(is_nothrow_swappable_v<T>&& is_nothrow_move_constructible_v<T>)){      x.swap(y);}};}
      Retrieved from "https://en.cppreference.com/mwiki/index.php?title=cpp/header/inplace_vector&oldid=173522"

      [8]ページ先頭

      ©2009-2025 Movatter.jp