Sdílet prostřednictvím


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

Viz také

Referenční dokumentace

num_get Class