Namespaces
Variants

std:: resetiosflags

From cppreference.net
< cpp ‎ | io ‎ | manip
Input/output manipulators
Floating-point formatting
Integer formatting
Boolean formatting
Field width and fill control
Other formatting
Whitespace processing
Output flushing
Status flags manipulation
resetiosflags
Time and money I/O
(C++11)
(C++11)
(C++11)
(C++11)
Quoted manipulator
(C++14)
Definiert in Header <iomanip>
/*unspecified*/ resetiosflags ( std:: ios_base :: fmtflags mask ) ;

Wenn in einem Ausdruck verwendet out << resetiosflags ( mask ) oder in >> resetiosflags ( mask ) , löscht alle Formatflags des Streams out oder in wie durch die mask spezifiziert.

Inhaltsverzeichnis

Parameter

mask - Bitmaske der zu löschenden Flags

Rückgabewert

Ein Objekt eines nicht näher spezifizierten Typs, sodass

  • Wenn out ein Objekt vom Typ std:: basic_ostream < CharT, Traits > ist, dann hat der Ausdruck out << resetiosflags ( mask )
    • den Typ std:: basic_ostream < CharT, Traits > &
    • den Wert out
    • verhält sich, als ob f ( out, mask ) aufgerufen würde
  • Wenn in ein Objekt vom Typ std:: basic_istream < CharT, Traits > ist, dann hat der Ausdruck in >> resetiosflags ( mask )
    • den Typ std:: basic_istream < CharT, Traits > &
    • den Wert in
    • verhält sich, als ob f ( in, mask ) aufgerufen würde

wobei die Funktion f definiert ist als:

void f(std::ios_base& str, std::ios_base::fmtflags mask)
{
    // spezifizierte Flags zurücksetzen
    str.setf(ios_base::fmtflags(0), mask);
}

Beispiel

#include <iomanip>
#include <iostream>
#include <sstream>
int main()
{
    std::istringstream in("10 010 10 010 10 010");
    int n1, n2;
    in >> std::oct >> n1 >> n2;
    std::cout << "Parsing \"10 010\" with std::oct gives: " << n1 << ' ' << n2 << '\n';
    in >> std::dec >> n1 >> n2;
    std::cout << "Parsing \"10 010\" with std::dec gives: " << n1 << ' ' << n2 << '\n';
    in >> std::resetiosflags(std::ios_base::basefield) >> n1 >> n2;
    std::cout << "Parsing \"10 010\" with autodetect gives: " << n1 << ' ' << n2 << '\n';
}

Ausgabe:

Parsing "10 010" with std::oct gives: 8 8
Parsing "10 010" with std::dec gives: 10 10
Parsing "10 010" with autodetect gives: 10 8

Fehlerberichte

Die folgenden verhaltensändernden Fehlerberichte wurden rückwirkend auf zuvor veröffentlichte C++-Standards angewendet.

DR Angewendet auf Verhalten wie veröffentlicht Korrigiertes Verhalten
LWG 183 C++98 resetiosflags konnte nur mit
Streams vom Typ std::ostream oder std::istream verwendet werden
verwendbar mit jedem
Zeichenstream

Siehe auch

setzt bestimmte Formatierungsflags
(öffentliche Elementfunktion von std::ios_base )
setzt die angegebenen ios_base -Flags
(Funktion)