num_get::do_get
Virtuální funkci, která je volána pro výpisy z posloupnost znaků číselné nebo logické hodnoty.
virtual iter_type do_get(
iter_type _First,
iter_type _Last,
ios_base& _Iosbase,
ios_base::iostate& _State,
long& _Val
) const;virtual iter_type do_get(
iter_type _First,
iter_type _Last,
ios_base& _Iosbase,
ios_base::iostate& _State,
unsigned short& _Val
) const;
virtual iter_type do_get(
iter_type _First,
iter_type _Last,
ios_base& _Iosbase,
ios_base::iostate& _State,
unsigned int& _Val
) const;
virtual iter_type do_get(
iter_type _First,
iter_type _Last,
ios_base& _Iosbase,
ios_base::iostate& _State,
unsigned long& _Val
) const;
virtual iter_type do_get(
iter_type _First,
iter_type _Last,
ios_base& _Iosbase,
ios_base::iostate& _State,
long long& _Val
) const;
virtual iter_type do_get(
iter_type _First,
iter_type _Last,
ios_base& _Iosbase,
ios_base::iostate& _State,
unsigned long long& _Val
) const;
virtual iter_type do_get(
iter_type _First,
iter_type _Last,
ios_base& _Iosbase,
ios_base::iostate& _State,
float& _Val
) const;
virtual iter_type do_get(
iter_type _First,
iter_type _Last,
ios_base& _Iosbase,
ios_base::iostate& _State,
double& _Val
) const;
virtual iter_type do_get(
iter_type _First,
iter_type _Last,
ios_base& _Iosbase,
ios_base::iostate& _State,
long double& _Val
) const;
virtual iter_type do_get(
iter_type _First,
iter_type _Last,
ios_base& _Iosbase,
ios_base::iostate& _State,
void *& _Val
) const;
virtual iter_type do_get(
iter_type _First,
iter_type _Last,
ios_base& _Iosbase,
ios_base::iostate& _State,
bool& _Val
) const;
Parametry
_First
Začátek rozsahu znaků, ze které chcete číst číslo._Last
Konec rozsahu znaků, ze které chcete číst číslo._Iosbase
Ios_base jehož příznaky se používají převod._State
Státu, na které failbit (viz ios_base::iostate) je přidána při selhání._Val
Hodnota, která byla přečtena.
Vrácená hodnota
Iterační po hodnota byla přečtena.
Poznámky
První funkce virtuální chráněný člen.
virtual iter_type do_get(
iter_type _First,
iter_type _Last,
ios_base& _Iosbase,
ios_base::iostate& _State,
long& _Val
) const;
odpovídá sekvenční prvky od _First v pořadí [_First, _Last) dokud byla uznána úplnou, neprázdné celé vstupní pole.Pokud úspěšný, převede toto pole na ekvivalentní hodnotu jako typ long, a uloží výsledek do _Val.Vrátí iterátoru jmenování prvního prvku za číselné vstupní pole.Jinak bude uložena nic v _Val a ios_base::failbit v state.Vrátí iterátoru jmenování prvního prvku mimo jakékoli předpony vstupní pole platné celé číslo.V případě, pokud je vrácená hodnota rovná se last, nastaví funkci ios_base::eofbit v state.
Vstupní pole integer je převeden podle stejných pravidel používá pro porovnávání a převod řadu funkcí skenování char prvky ze souboru.(Každé takové char prvek považován za mapovat na odpovídající prvek typu Elem tak jednoduché, 1: 1, mapování.) Specifikace převodu rovnocenné kontroly se stanoví takto:
If iosbase.ios_base::flags() & ios_base::basefield == ios_base::oct, the conversion specification is lo.
Pokud iosbase.flags() & ios_base::basefield == ios_base::hex, specifikaci převodu je lx.
Pokud iosbase.flags() & ios_base::basefield == 0, specifikaci převodu je li.
Jinak je převod specifikace ld.
Formát vstupní pole integer je dále určena Podmínka národního prostředífac vrácený voláním use_facet <numpunct<Elem>(iosbase. ios_base::getloc()).Konkrétně:
fac.numpunct::grouping()Určuje způsob seskupování číslic nalevo od desetinnou
fac.numpunct::thousands_sep()Určuje pořadí, který odděluje skupiny číslic nalevo desetinnou.
Pokud žádné výskyty fac.thousands_sep() dojít v číselné vstupní pole je uloženo žádné omezení seskupení.Jinak omezeními seskupení zavedených fac.grouping() jsou vynucena a oddělovače jsou odstraněny dříve, než dojde k převodu skenování.
Čtvrté virtuální chráněné členské funkce:
virtual iter_type do_get(
iter_type _First,
iter_type _Last,
ios_base& _Iosbase,
ios_base::iostate& _State,
unsigned long& _Val
) const;
chová stejně jako první, s výjimkou, že nahradí specifikace převodu ld s lu.Pokud úspěšný převádí číselné vstupní pole pro hodnotu typu unsigned long a uloží hodnotu do _Val.
Pátý virtuální chráněné členské funkce:
virtual iter_type do_get(
iter_type _First,
iter_type _Last,
ios_base& _Iosbase,
ios_base::iostate& _State,
long long& _Val
) const;
chová stejně jako první, s výjimkou, že nahradí specifikace převodu ld s lld.Pokud úspěšný převádí číselné vstupní pole pro hodnotu typu long long a uloží hodnotu do _Val.
Šestý virtuální chráněné členské funkce:
virtual iter_type do_get(
iter_type _First,
iter_type _Last,
ios_base& _Iosbase,
ios_base::iostate& _State,
unsigned long long& _Val
) const;
chová stejně jako první, s výjimkou, že nahradí specifikace převodu ld s llu.Pokud úspěšný převádí číselné vstupní pole pro hodnotu typu unsigned long long a uloží hodnotu do _Val.
Sedmý virtuální chráněné členské funkce:
virtual iter_type do_get(
iter_type _First,
iter_type _Last,
ios_base& _Iosbase,
ios_base::iostate& _State,
float& _Val
) const;
chová stejně jako první, s výjimkou, že je endeavors tak, aby odpovídala kompletní, neprázdné plovoucí vstupní pole.fac.numpunct::decimal_point()Určuje pořadí oddělující číslic celé číslo od zlomek číslic.Specifikátor rovnocenné kontroly převodu je lf.
Osmá virtuální chráněné členské funkce:
virtual iter_type do_get(
iter_type _First,
iter_type _Last,
ios_base& _Iosbase,
ios_base::iostate& _State,
double& _Val
) const;
chová stejně jako první, s výjimkou, že je endeavors tak, aby odpovídala kompletní, neprázdné plovoucí vstupní pole.fac.numpunct::decimal_point()Určuje pořadí oddělující číslic celé číslo od zlomek číslic.Specifikátor rovnocenné kontroly převodu je lf.
Devátá virtuální chráněné členské funkce:
virtual iter_type do_get(
iter_type _First,
iter_type _Last,
ios_base& _Iosbase,
ios_base::iostate& _State,
long double& _Val
) const;
chová stejně jako osmá, převod specifikátor rovnocenné skenování je Lf.
Devátá virtuální chráněné členské funkce:
virtual iter_type do_get(
iter_type _First,
iter_type _Last,
ios_base& _Iosbase,
ios_base::iostate& _State,
void *& _Val
) const;
chová stejně první převod specifikátor rovnocenné skenování je p.
Poslední (eleventh) virtuální chráněné členské funkce:
virtual iter_type do_get(
iter_type _First,
iter_type _Last,
ios_base& _Iosbase,
ios_base::iostate& _State,
bool& _Val
) const;
chová stejně jako první, s výjimkou, že je endeavors tak, aby odpovídala kompletní, neprázdné vstupní pole Boolean.Pokud úspěšný převádí vstupní pole Boolean hodnotu typu bool a uloží hodnotu do _Val.
Vstupní pole Boolean trvá dvě formy.Pokud iosbase.flags() & ios_base::boolalpha hodnotu false, je stejný jako vstupní pole integer, kromě toho, že převedený hodnota musí být buď 0 (false) nebo 1 (PRAVDA).Pořadí jinak, musí odpovídat buď fac.numpunct::falsename() (pro false) nebo fac.numpunct::truename() (pro true).
Příklad
Příklad pro získat, kde je virtuální členské funkce volána do_get.
Požadavky
Záhlaví: <locale>
Obor názvů: std