basic_istream::operator>>

Ruft eine Funktion auf dem Eingabestream an oder liest formatierte Daten im Eingabestream.

basic_istream& operator>>(
   basic_istream& (*_Pfn)(basic_istream&)
);
basic_istream& operator>>(
   ios_base& (*_Pfn)(ios_base&)
);
basic_istream& operator>>(
   basic_ios<Elem, Tr>& (*_Pfn)(basic_ios<Elem, Tr>&))
;
basic_istream& operator>>(
   basic_streambuf<Elem, Tr> *_Strbuf
);
basic_istream& operator>>(
   bool& _Val
);
basic_istream& operator>>(
   short& _Val
);
basic_istream& operator>>(
   unsigned short& _Val
);
basic_istream& operator>>(
   int& _Val
);
basic_istream& operator>>(
   unsigned int& _Val
);
basic_istream& operator>>(
   long& _Val
);
basic_istream& operator>>(
   unsigned long& _Val
);
basic_istream& operator>>(
   long long& _Val
);
basic_istream& operator>>(
   unsigned long long& _Val
);
basic_istream& operator>>(
   void *& _Val
);
basic_istream& operator>>(
   float& _Val
);
basic_istream& operator>>(
   double& _Val
);
basic_istream& operator>>(
   long double& _Val
);

Parameter

  • _Pfn
    Ein Funktionszeiger.

  • _Strbuf
    Ein Objekt des Typs stream_buf.

  • _Val
    Der Wert zum Lesen aus dem Stream.

Rückgabewert

Der Stream (*this).

Hinweise

Der <istream> Header definiert auch mehrere globale Extraktionsoperatoren.Weitere Informationen finden Sie unter operator>> (<istream>).

Die erste Memberfunktion, wird sichergestellt, dass ein Ausdruck des Formulars istr >> wsLR(istr) aufgerufen wird, und gibt dann *this zurück.Die zweite und dritte Funktionen verhindern, dass andere Manipulatoren, wie Hexadezimal, sich ähnlich verhalten.Die übrigen Funktionen legen die formatierten Eingabefunktionen fest.

Die Funktion:

basic_istream& operator>>(
    basic_streambuf<Elem, Tr> *_Strbuf);

extrahiert Elemente, wenn _Strbuf kein NULL-Zeiger ist, und fügt sie in _Strbuf ein.Extraktionshalt auf Dateiende.Sie wird auch auf, ohne das betreffende Element zu extrahieren, wenn eine Einfügung eine Ausnahme auslöst oder verlässt (die abgefangen wird, jedoch nicht erneut ausgelöst).Wenn die Funktion keine Elemente extrahiert, ruft sie setstate an (failbit).In jedem Fall gibt die Funktion *this zurück.

Die Funktion:

basic_istream& operator>>(bool& _Val);

extrahiert ein Feld und konvertiert sie in einen booleschen Wert durch Aufrufen von use_facet <num_get<Elem, InIt>(getloc).rufen Sie ab(InIt( rdbuf), Init(0), *this, getloc, _Val).Hier wird InIt als istreambuf_iterator<Elem, Tr> definiert.Die Funktion gibt *this zurück.

Die Funktionen:

basic_istream& operator>>(short& _Val);
basic_istream& operator>>(unsigned short& _Val);
basic_istream& operator>>(int& _Val);
basic_istream& operator>>(unsigned int& _Val);
basic_istream& operator>>(long& _Val);
basic_istream& operator>>(unsigned long& _Val);

basic_istream& operator>>(long long& _Val);
basic_istream& operator>>(unsigned long long& _Val);

basic_istream& operator>>(void *& _Val);

jeder Auszug ein Feld und konvertieren es in einen numerischen Wert, indem er use_facet<num_get<Elem, InIt>(getloc) aufruft.rufen Sie ab(InIt( rdbuf), Init(0), *this, getloc, _Val).Hier wird InIt definiert, wie istreambuf_iterator<Elem, Tr> und _Val-Typ long*,*unsigned long oder void* nach Bedarf verfügt.

Wenn der konvertierte Wert nicht dargestellt werden kann als Typ von _Val, die Funktionsaufrufe setstate(failbit).In jedem Fall gibt die Funktion *this zurück.

Die Funktionen:

basic_istream& operator>>(float& _Val);
basic_istream& operator>>(double& _Val);
basic_istream& operator>>(long double& _Val);

jeder Auszug ein Feld und konvertieren es in einen numerischen Wert, indem er use_facet<num_get<Elem, InIt>(getloc) aufruft.get(InIt( rdbuf), Init(0), *this, getloc, _Val).Hier wird InIt definiert, wie istreambuf_iterator<Elem, Tr> und _Val-Typ double oder long double nach Bedarf verfügt.

Wenn der konvertierte Wert nicht dargestellt werden kann als Typ von _Val, die Funktionsaufrufe setstate(failbit).In jedem Fall wird *this zurück.

Beispiel

// istream_basic_istream_op_is.cpp
// compile with: /EHsc
#include <iostream>

using namespace std;

ios_base& hex2( ios_base& ib ) 
{
   ib.unsetf( ios_base::dec );
   ib.setf( ios_base::hex );
   return ib;
}

basic_istream<char, char_traits<char> >& somefunc(basic_istream<char, char_traits<char> > &i)
{
   if ( i == cin ) 
   {
      cerr << "i is cin" << endl;
   }
   return i;
}

int main( ) 
{
   int i = 0;
   cin >> somefunc;
   cin >> i;
   cout << i << endl;
   cin >> hex2;
   cin >> i;
   cout << i << endl;
}

Eingabe

10
10

Beispielausgabe

i is cin
10
10
10
16

Anforderungen

Header: <istream>

Namespace: std

Siehe auch

Referenz

basic_istream Class

operator>> (<istream>)

Programmierung der iostream-Headerdatei

iostreams Konventionen