<string_view>
Definisce il modello basic_string_view
di classe e i tipi e gli operatori correlati. Richiede l'opzione std:c++17
del compilatore o versione successiva.
Sintassi
#include <string_view>
Osservazioni:
La string_view
famiglia di specializzazioni modello offre un modo efficiente per passare un handle indipendente dalle eccezioni di sola lettura e non proprietario ai dati di tipo carattere di qualsiasi oggetto di tipo stringa con il primo elemento della sequenza in corrispondenza della posizione zero. Un parametro di funzione di tipo string_view
(che è un typedef per basic_string_view<char>
) può accettare argomenti come std::string
, char*
o qualsiasi altra classe di caratteri narrow di tipo stringa per cui viene definita una conversione implicita in string_view
. Analogamente, un parametro di wstring_view
u16string_view
o u32string_view
può accettare qualsiasi tipo di stringa per il quale viene definita una conversione implicita. Per altre informazioni, vedere basic_string_view
Classe.
Typedef
Nome tipo | Descrizione |
---|---|
string_view |
Specializzazione del modello basic_string_view di classe con elementi di tipo char . |
wstring_view |
Specializzazione del modello basic_string_view di classe con elementi di tipo wchar_t . |
u16string_view |
Specializzazione del modello basic_string_view di classe con elementi di tipo char16_t . |
u32string_view |
Specializzazione del modello basic_string_view di classe con elementi di tipo char32_t . |
Operatori
Gli <string_view>
operatori possono confrontare string_view
oggetti con oggetti di qualsiasi tipo stringa convertibile.
Operatore | Descrizione |
---|---|
operator!= |
Verifica se l'oggetto a sinistra dell'operatore non è uguale all'oggetto a destra. |
operator== |
Verifica se l'oggetto sul lato sinistro dell'operatore è uguale all'oggetto sul lato destro. |
operator< |
Verifica se l'oggetto a sinistra dell'operatore è minore di quello dell'oggetto a destra. |
operator<= |
Verifica se l'oggetto sul lato sinistro dell'operatore è minore o uguale all'oggetto sul lato destro. |
operator<\< |
Funzione modello che inserisce un oggetto string_view in un flusso di output. |
operator> |
Verifica se l'oggetto a sinistra dell'operatore è maggiore di quello dell'oggetto a destra. |
operator>= |
Verifica se l'oggetto sul lato sinistro dell'operatore è maggiore o uguale all'oggetto sul lato destro. |
Valori letterali
Operatore | Descrizione |
---|---|
sv |
Costruisce un oggetto string_view , wstring_view , u16string_view o u32string_view a seconda del tipo di valore letterale stringa a cui viene accodato. |
Classi
Classe | Descrizione |
---|---|
basic_string_view Classe |
Modello di classe che fornisce una visualizzazione di sola lettura in una sequenza di oggetti arbitrari simili a caratteri. |
hash |
Oggetto Function che produce un valore hash per un oggetto string_view . |
Requisiti
Intestazione:
<string_view>
Spazio dei nomi:
std
Opzione del compilatore:
std:c++17
o versione successiva.