std::basic_istream::basic_istream
Da cppreference.com.
|
|
Questa pagina è stata tradotta in modo automatico dalla versione in ineglese della wiki usando Google Translate.
La traduzione potrebbe contenere errori e termini strani. Muovi il puntatore sopra al testo per vedere la versione originale. Puoi aiutarci a correggere gli gli errori. Per ulteriori istruzioni clicca qui. |
<metanoindex/>
<tbody> </tbody> explicit basic_istream( std::basic_streambuf<CharT,Traits>* sb); |
(1) | |
protected: basic_istream( const basic_istream& rhs ) = delete; |
(2) | |
protected: basic_istream( basic_istream&& rhs ); |
(3) | (dal C++11) |
1)
Costruisce l'oggetto
basic_istream, l'assegnazione di valori iniziali per la classe base chiamando basic_ios::init(sb). Il valore di gcount() viene inizializzato a zero.Original:
Constructs the
basic_istream object, assigning initial values to the base class by calling basic_ios::init(sb). The value of gcount() is initialized to zero.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
2)
Il costruttore di copia è protetto, e viene eliminato. Flussi di ingresso non sono copiabili.
Original:
The copy constructor is protected, and is deleted. Input streams are not copyable.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
3)
Il costruttore mossa copia il valore di
gcount() da rhs, imposta il gcount () valore sd a zero, e usa basic_ios<charT, traits>::move(rhs) per spostare tutti i membri basic_ios, fatta eccezione per la rdbuf(), da rhs in *this. Questo costruttore mossa è protetta: viene chiamato dai costruttori movimento delle classi mobili flusso di input e std::basic_ifstream std::basic_istringstream, che sa come muoversi correttamente il streambuffer associato.Original:
The move constructor copies the value of
gcount() from rhs, sets the gcount() value of rhs to zero, and uses basic_ios<charT, traits>::move(rhs) to move all basic_ios members, except for the rdbuf(), from rhs into *this. This move constructor is protected: it is called by the move constructors of movable input stream classes std::basic_ifstream and std::basic_istringstream, which know how to correctly move the associated streambuffer.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Parametri
| sb | - | streambuffer da usare come dispositivo sottostante
Original: streambuffer to use as underlying device The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
Esempio
#include <sstream>
#include <iostream>
int main()
{
std::istringstream s1("hello");
std::istream s2(s1.rdbuf()); // OK: s2 shares the buffer with s1
// std::istream s3(std::istringstream("test")); // ERROR: move constructor is protected
// std::istream s4(s2); // ERROR: copy constructor is deleted
std::istringstream s5(std::istringstream("world")); // OK: move ctor called by derived class
std::cout << s2.rdbuf() << ' ' << s5.rdbuf() << '\n';
}
Output:
hello world