다음을 통해 공유


money_get::do_get

가상 함수 호출에 화폐 가치를 나타내는 문자 시퀀스를 숫자 값을 추출 합니다.

virtual iter_type do_get(
   iter_type _First, 
   iter_type _Last,
   bool _Intl, 
   ios_base& _Iosbase, 
   ios_base::iostate& _State,
   long double& _Val
) const
virtual iter_type do_get(
   iter_type _First, 
   iter_type _Last,
   bool _Intl, 
   ios_base& _Iosbase, 
   ios_base::iostate& _State,
   string_type& _Val
) const

매개 변수

  • _First
    변환할 시퀀스의 시작 주소를 지정 하는 반복기를 입력 합니다.

  • _Last
    변환할 시퀀스의 끝 주소를 지정 하는 반복기를 입력 합니다.

  • _Intl
    입력 시퀀스에서 예상 되는 통화 기호를 나타내는 부울 값: true 국제 경우 거짓 국내 경우.

  • _Iosbase
    형식 플래그는 설정 통화 기호입니다; 경우 그렇지 않으면 필수입니다.

  • _State
    해당 비트 마스크 요소 또는 작업을 성공 여부에 따라 스트림의 상태를 설정 합니다.

  • _Val
    변환 된 시퀀스를 저장 하는 문자열입니다.

반환 값

주소 통화 입력된 필드의 첫 번째 요소는 입력된 반복기입니다.

설명

보호 된 가상 멤버 함수는 첫 번째 시작 시퀀스에서 첫 번째 연속 요소와 일치 하도록 시도 [_First, _Last) 통화 번째로 완전히 인식 되었습니다 때까지 필드를 입력 합니다.성공이 필드 선택적으로 빼기 기호 앞에 하나 이상의 10 진수 숫자로 변환 하는 경우 (–) 양을 나타내는 데, 그 결과를 저장 하 고는 string_type 개체 _Val.통화 입력된 필드의 첫 번째 요소를 지정 하는 반복기를 반환 합니다.그렇지 않은 경우는 빈 시퀀스에 저장 _Val 설정 ios_base::failbit 에서 _State.접두사 유효한 통화 입력된 필드의 첫 번째 요소를 지정 하는 반복기를 반환 합니다.반환 값이 같은 경우 두 경우 모두에서 _Last, 함수 집합 ios_base::eofbit 에서 _State.

성공 하면 선택적으로 부호 있는 숫자가 시퀀스 형식의 값으로 변환 된다는 두 번째 보호 된 가상 멤버 함수는 첫 번째 동작 long double 에서 해당 값을 저장 하 고 _Val.

통화 입력된 필드의 형식으로 결정 되는 로케일 면fac 효과적인 호출에서 반환 된 use_facet <moneypunct<CharType, 국제>> (iosbase.getloc).

특히 다음과 같은 경우를 참조하십시오.

  • fac. neg_format 필드의 구성 요소에서 발생 하는 순서를 결정 합니다.

  • fac. curr_symbol 통화 기호 구성 요소의 순서를 결정 합니다.

  • fac. positive_sign 양수 부호가 구성 요소의 순서를 결정 합니다.

  • fac. negative_sign 음수 부호가 구성 요소의 순서를 결정 합니다.

  • fac. 그룹화 는 소수점 왼쪽으로 숫자를 그룹화 하는 방법을 결정 합니다.

  • fac. thousands_sep 는 소수점의 왼쪽을 구분 하는 요소를 결정 합니다.

  • fac. decimal_point 정수 자릿수를 소수 자릿수를 구분 하는 요소를 결정 합니다.

  • fac. frac_digits 상당 부분 자릿수는 소수점 오른쪽에 결정 합니다.금액에 호출 되어 보다 더 많은 소수 자릿수를 구문 분석할 때 frac_digits, do_get 최대 소비 후 구문 분석을 중지 frac_digits 자.

경우 기호 문자열 (fac.negative_sign or fac.positive_sign) 두 개 이상의 요소가 첫 번째 요소만 위치 일치 하는 요소와 같은 money_base::sign 형식 패턴에 나타납니다 (fac.neg_format).나머지 요소는 화폐 입력된 필드의 끝에 일치 됩니다.두 문자열 다음 요소 통화 입력된 필드에 일치 하는 첫 번째 요소에 있으면 기호 문자열 공백으로 가져와서 부호 양수입니다.

경우 iosbase. 플래그 &showbase 0,이 문자열은 fac.curr_symbol 위치와 일치 해야 하는 요소 money_base::symbol 형식 패턴에 나타납니다.그렇지 않으면 if money_base::symbol 형식 패턴의 끝에 발생 한 요소가 기호 문자열을 일치 시킬 남아 있으면 통화 기호 일치 하지 않음.그렇지 않으면 통화 기호 (선택 사항) 일치 합니다.

인스턴스가 없는 경우 fac.thousands_sep 통화 입력된 필드의 값 부분에서 발생 (위치와 같은 요소 money_base::value 형식 패턴에 표시), 그룹화 제약 조건이 없는 조건이 적용 됩니다.그렇지 않으면 모든 그룹화 제약 조건을 부과 하 여 fac. 그룹화 적용 됩니다.참고 결과 숫자 시퀀스는 낮은 순서 정수를 나타냅니다 fac.frac_digits 소수점이 하 자릿수 소수점 오른쪽에 간주 됩니다.

임의의 공백 문자는 일치 하는 위치 크거나 요소 money_base::space 이외의 형식 패턴의 끝에 나타나는 경우 형식 패턴에 나타납니다.그렇지 않으면 내부 공백 없이 일치 합니다.요소 ch 경우 공백은 간주 됩니다 use_facet <ctype<CharType> >(iosbase.getloc).is(ctype_base::space, ch) is true.

예제

예제를 보려면 가져오기을 호출 do_get.

요구 사항

헤더: <locale>

네임 스페이스: std

참고 항목

참조

money_get Class