Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gibt einen numerischen Wert aus einer Zeichenfolge, die einen Währungswert darstellt.
iter_type get(
iter_type _First,
iter_type _Last,
bool _Intl,
ios_base& _Iosbase,
ios_base::iostate& _State,
long double& _Val
) const;
iter_type get(
iter_type _First,
iter_type _Last,
bool _Intl,
ios_base& _Iosbase,
ios_base::iostate& _State,
string_type& _Val
) const;
Parameter
_First
Eingabeiterator, der den Anfang der zu konvertierende Sequenz behandelt._Last
Eingabeiterator, der das Ende der zu konvertierende Sequenz behandelt._Intl
Ein boolescher Wert, der den Typ des Währungssymbols erwartet in der Sequenz angibt: true International, wenn false, wenn inländisch._Iosbase
Ein Formatcode, wenn der Satz angibt, dass das Währungssymbol ist optional; andernfalls ist es erforderlich_State
Legt die entsprechenden Bitmaskenelemente für den Streamzustand fest, je nachdem ob die Vorgänge ausführen._Val
Eine Zeichenfolge, die die konvertierte Sequenz speichert.
Rückgabewert
Ein Eingabeiterator, der das erste Element über dem Währungseingabefeld hinaus behandelt.
Hinweise
Beide Memberfunktionen geben do_get(_First, _Last, _Intl, _Iosbase, _State, _Val) zurück.
Beispiel
// money_get_get.cpp
// compile with: /EHsc
#include <locale>
#include <iostream>
#include <sstream>
using namespace std;
int main( )
{
locale loc( "german_germany" );
basic_stringstream< char > psz;
psz << use_facet<moneypunct<char, 1> >(loc).curr_symbol() << "-1.000,56";
basic_stringstream< char > psz2;
psz2 << "-100056" << use_facet<moneypunct<char, 1> >(loc).curr_symbol();
ios_base::iostate st = 0;
long double fVal;
psz.flags( psz.flags( )|ios_base::showbase );
// Which forced the READING the currency symbol
psz.imbue(loc);
use_facet < money_get < char > >( loc ).
get( basic_istream<char>::_Iter( psz.rdbuf( ) ),
basic_istream<char>::_Iter( 0 ), true, psz, st, fVal );
if ( st & ios_base::failbit )
cout << "money_get(" << psz.str( ) << ", intl = 1) FAILED"
<< endl;
else
cout << "money_get(" << psz.str( ) << ", intl = 1) = "
<< fVal/100.0 << endl;
use_facet < money_get < char > >( loc ).
get(basic_istream<char>::_Iter(psz2.rdbuf( )),
basic_istream<char>::_Iter(0), false, psz2, st, fVal);
if ( st & ios_base::failbit )
cout << "money_get(" << psz2.str( ) << ", intl = 0) FAILED"
<< endl;
else
cout << "money_get(" << psz2.str( ) << ", intl = 0) = "
<< fVal/100.0 << endl;
};
Beispielausgabe
Wenn Sie Windows 2000 oder früher ausführen, rufen Sie Ausgaben dieses ab:
money_get(DEM-1.000,56, intl = 1) = -1000.56
money_get(-100056DM, intl = 0) = -1000.56
Wenn Sie Windows XP ausführen, rufen Sie Ausgaben dieses ab:
money_get(EUR-1.000,56, intl = 1) = -1000.56
money_get(-100056EUR, intl = 0) = -1000.56
Anforderungen
Header: <locale>
Namespace: std