Namespace
Varianti

deduction guides for std::vector

Da cppreference.com.
< cpp‎ | container‎ | vector
 
 
 
std::vector
Membri funzioni
Original:
Member functions
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
vector::vector
vector::~vector
vector::operator=
vector::assign
vector::get_allocator
Elemento accesso
Original:
Element access
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
vector::at
vector::operator[]
vector::front
vector::back
vector::data(C++11)
Iteratori
Original:
Iterators
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
vector::begin
vector::cbegin

(C++11)
vector::end
vector::cend

(C++11)
vector::rbegin
vector::crbegin

(C++11)
vector::rend
vector::crend

(C++11)
Capacità
Original:
Capacity
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
vector::empty
vector::size
vector::max_size
vector::reserve
vector::capacity
vector::shrink_to_fit(C++11)
Modificatori
Original:
Modifiers
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
vector::clear
vector::insert
vector::emplace(C++11)
vector::erase
vector::push_back
vector::emplace_back(C++11)
vector::pop_back
vector::resize
vector::swap
 
Elemento definito nell'header <vector>
template< class InputIt,

          class Alloc = std::allocator<typename std::iterator_traits<InputIt>::value_type>>
vector(InputIt, InputIt, Alloc = Alloc())

  -> vector<typename std::iterator_traits<InputIt>::value_type, Alloc>;

Questa deduction guide è fornita a vector per permettere la deduzione da un range di iteratori. Questi overload partecipano nella overload resolution solo se InputIt soddisfa LegacyInputIterator e Alloc soddisfa Allocator.

Nota: il limite per cui la libreria determina che un tipo non soddisfa LegacyInputIterator non è specificato, tranne che come minimo i tipi integrali non sono qualificati come input iterators. Similmente, il limite per cui è determinato che un tipo non soddisfi Allocator non è specificato, tranne che come minimo deve esistere un tipo membro Alloc::value_type e l'espressione std::declval<Alloc&>().allocate(std::size_t{}) deve essere ben formata quando trattata come operando non evalutato.

[modifica] Esempio

#include <vector>
 
int main() {
   std::vector<int> v = {1, 2, 3, 4};
 
   // usa la deduction guide esplicita per dedurre std::vector<int>
   std::vector x(v.begin(), v.end()); 
 
   // deduce std::vector<std::vector<int>::iterator>
   // la prima fase della risoluzione degli overload per la list-initialization seleziona
   // il candidato dal costruttore della initializer-list; la seconda fase non è attuata e
   // la deduction guide non ha effetto
   std::vector y{v.begin(), v.end()}; 
}