Udostępnij za pośrednictwem


num_get::do_get

Funkcja wirtualnego nosi do ekstraktów wartości liczbowych lub logicznych z sekwencji znaków.

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
    Początek zakresu znaków, z którego można odczytać liczbę.

  • _Last
    Koniec zakresu znaków, z którego odczytanie liczby.

  • _Iosbase
    Ios_base których flagi są używane przez konwersji.

  • _State
    Państwo, do którego failbit (zobacz ios_base::iostate) dodaje się po awarii.

  • _Val
    Wartość, która została odczytana.

Wartość zwracana

Iteratora po przeczytaniu wartość.

Uwagi

Pierwsza funkcja wirtualnego chroniony członek

virtual iter_type do_get(

iter_type _First,

iter_type _Last,

ios_base& _Iosbase,

ios_base::iostate& _State,

long& _Val

) const;

Dopasowuje kolejne elementy, począwszy od _First w sekwencji [_First, _Last) aż rozpoznał kompletne, całkowitą niepusty wejściowe pole.Jeśli pomyślne, to konwertuje to pole jej równoważnej wartości, jako typ long, i zapisuje wynik w _Val.Zwraca iterację wyznaczające pierwszy element poza numeryczne pole wejściowe.W przeciwnym wypadku funkcja przechowuje nic w _Val i ios_base::failbit w state.Zwraca iterację wyznaczające pierwszy element poza każdy prefiks pole wejściowe prawidłową liczbą całkowitą.W przypadku, jeśli wartość zwracana jest równe last, zestawy funkcji ios_base::eofbit w state.

Pole wejściowe całkowitą jest konwertowany na takie same zasady stosowane przez funkcje skanowania dopasowywania i konwersji szeregu char elementów z pliku.(Każdego takiego char mapowania do elementu typu równoważne zakłada, że element Elem przez proste, jeden do jednego, mapowanie.) Specyfikacja konwersji równoważne skanowania jest ustalana w następujący sposób:

If iosbase.ios_base::flags() & ios_base::basefield == ios_base::oct, the conversion specification is lo.

Jeśli iosbase.flags() & ios_base::basefield == ios_base::hex, specyfikacja konwersji jest lx.

Jeśli iosbase.flags() & ios_base::basefield == 0, specyfikacja konwersji jest li.

W przeciwnym razie specyfikacja konwersji jest ld.

Format pola wejściowego całkowitą dalsze ustalona przez locale aspektfac zwrócony przez wywołanie use_facet <numpunct<Elem>(iosbase. ios_base::getloc()).W szczególności:

fac.numpunct::grouping()Określa sposób grupowania cyfr po lewej stronie przecinka wszelkich

fac.numpunct::thousands_sep()Określa sekwencję, oddzielający grup cyfr po lewej stronie dowolnego przecinka dziesiętnego.

Jeśli nie wystąpienia fac.thousands_sep() występują w numeryczne pole wejściowe jest nałożone nie ograniczenie grupowania.W przeciwnym razie grupowania ograniczenia nałożone przez fac.grouping() są wymuszane i separatory są usuwane, zanim nastąpi konwersja skanowania.

Czwarty funkcji wirtualnych chroniony członek:

virtual iter_type do_get(

iter_type _First,

iter_type _Last,

ios_base& _Iosbase,

ios_base::iostate& _State,

unsigned long& _Val

) const;

zachowuje się tak samo, jak pierwszy, chyba że zastępuje ona specyfikacja konwersji ld z lu.Jeśli pomyślne go konwertuje wejściowe pole liczbowe wartości typu unsigned long i zapisanie tej wartości w _Val.

Funkcja wirtualnego chroniony członek piąty:

virtual iter_type do_get(

iter_type _First,

iter_type _Last,

ios_base& _Iosbase,

ios_base::iostate& _State,

long long& _Val

) const;

zachowuje się tak samo, jak pierwszy, chyba że zastępuje ona specyfikacja konwersji ld z lld.Jeśli pomyślne go konwertuje wejściowe pole liczbowe wartości typu long long i zapisanie tej wartości w _Val.

Szósty funkcji wirtualnych chroniony członek:

virtual iter_type do_get(

iter_type _First,

iter_type _Last,

ios_base& _Iosbase,

ios_base::iostate& _State,

unsigned long long& _Val

) const;

zachowuje się tak samo, jak pierwszy, chyba że zastępuje ona specyfikacja konwersji ld z llu.Jeśli pomyślne go konwertuje wejściowe pole liczbowe wartości typu unsigned long long i zapisanie tej wartości w _Val.

Siódmy funkcji wirtualnych chroniony członek:

virtual iter_type do_get(

iter_type _First,

iter_type _Last,

ios_base& _Iosbase,

ios_base::iostate& _State,

float& _Val

) const;

zachowuje się tak samo, jak pierwszy, z wyjątkiem go usiłują kompletne, niepuste pole wejściowe zmiennoprzecinkowe zgodne.fac.numpunct::decimal_point()Określa sekwencję, oddzielający cyfr całkowitą od cyfry ułamka.Specyfikator konwersji równoważne skanowania jest lf.

Ósmy funkcji wirtualnych chroniony członek:

virtual iter_type do_get(

iter_type _First,

iter_type _Last,

ios_base& _Iosbase,

ios_base::iostate& _State,

double& _Val

) const;

zachowuje się tak samo, jak pierwszy, z wyjątkiem go usiłują kompletne, niepuste pole wejściowe zmiennoprzecinkowe zgodne.fac.numpunct::decimal_point()Określa sekwencję, oddzielający cyfr całkowitą od cyfry ułamka.Specyfikator konwersji równoważne skanowania jest lf.

Dziewiąty funkcji wirtualnych chroniony członek:

virtual iter_type do_get(

iter_type _First,

iter_type _Last,

ios_base& _Iosbase,

ios_base::iostate& _State,

long double& _Val

) const;

zachowuje się taki sam, jak ósma, z wyjątkiem specyfikatora konwersji równoważne skanowania Lf.

Dziewiąty funkcji wirtualnych chroniony członek:

virtual iter_type do_get(

iter_type _First,

iter_type _Last,

ios_base& _Iosbase,

ios_base::iostate& _State,

void *& _Val

) const;

działa tak samo pierwszy, z wyjątkiem, że specyfikatora konwersji równoważne skanowania p.

Ostatni funkcji członek chroniony (jedenasta) wirtualnego:

virtual iter_type do_get(

iter_type _First,

iter_type _Last,

ios_base& _Iosbase,

ios_base::iostate& _State,

bool& _Val

) const;

zachowuje się tak samo, jak pierwszy, z wyjątkiem go usiłują odpowiadają kompletne, niepuste pole wprowadzania wartości logicznych.Jeżeli pomyślnie go konwertuje wejściowe pole logiczne wartości typu bool i zapisanie tej wartości w _Val.

Pole wejściowe logiczne przyjmuje jedną z dwóch form.Jeśli iosbase.flags() & ios_base::boolalpha ma wartość false, jest taki sam, jak pole wejściowe całkowitą, z wyjątkiem, że konwertowaną wartość musi być 0 (FAŁSZ) lub 1 (PRAWDA).W przeciwnym razie musi odpowiadać sekwencji albo fac.numpunct::falsename() (na FAŁSZ) lub fac.numpunct::truename() (na PRAWDA).

Przykład

Zobacz przykład dla uzyskać, gdzie funkcja członka wirtualnego jest wywoływana przez do_get.

Wymagania

Nagłówek: <locale>

Obszar nazw: std

Zobacz też

Informacje

num_get Class