numpunct 클래스

숫자 및 부울 식의 서식 및 문장 부호에 대한 정보를 나타내는 데 사용되는 형식 CharType 의 시퀀스를 설명하는 로컬 패싯으로 사용할 수 있는 개체를 설명하는 클래스 템플릿입니다.

구문

template <class CharType>
class numpunct : public locale::facet;

매개 변수

Chartype
로캘의 문자를 인코딩하기 위해 프로그램 내 사용하는 형식입니다.

설명

모든 로캘 패싯과 마찬가지로, 고정 개체 ID에는 초기값 0이 저장되어 있습니다. 저장된 값에 액세스를 처음 시도하면 id에 고유한 양수 값이 저장됩니다.

생성자

생성자 Description
numpunct numpunct 형식의 개체에 대한 생성자입니다.

Typedef

형식 이름 설명
char_type 로캘에서 사용하는 문자를 설명하기 위해 사용하는 형식입니다.
string_type CharType 형식의 문자가 포함된 문자열을 설명하는 형식입니다.

멤버 함수

멤버 함수 설명
decimal_point 소수점으로 사용할 로캘별 요소를 반환합니다.
do_decimal_point 소수점으로 사용할 로캘별 요소를 반환하기 위해 호출하는 보호된 가상 멤버 함수입니다.
do_falsename false 값을 텍스트로 표현하는 데 사용할 문자열을 반환하기 위해 호출하는 보호된 가상 멤버 함수입니다.
do_grouping 소수점 자리 왼쪽의 숫자를 그룹화하는 방법을 결정하는 로캘별 규칙을 반환하기 위해 호출하는 보호된 가상 멤버 함수입니다.
do_thousands_sep 1000 단위 구분 기호로 사용할 로캘별 요소를 반환하기 위해 호출하는 보호된 가상 멤버 함수입니다.
do_truename true 값을 텍스트로 표현하는 데 사용할 문자열을 반환하기 위해 호출하는 보호된 가상 멤버 함수입니다.
falsename false 값을 텍스트로 표현하기 위해 사용할 문자열을 반환합니다.
grouping 소수점 왼쪽의 숫자를 그룹화할 방법을 결정하기 위한 로캘별 규칙을 반환합니다.
thousands_sep 1000 단위 구분 기호로 사용할 로캘별 요소를 반환합니다.
truename true 값을 텍스트로 표현하기 위해 사용할 문자열을 반환합니다.

요구 사항

헤더:<로캘>

네임스페이스: std

numpunct::char_type

로캘에서 사용하는 문자를 설명하기 위해 사용하는 형식입니다.

typedef CharType char_type;

설명

이 형식은 템플릿 매개 변수 CharType과 동일한 의미입니다.

numpunct::d ecimal_point

소수점으로 사용할 로캘별 요소를 반환합니다.

CharType decimal_point() const;

Return Value

소수점으로 사용할 로캘별 요소입니다.

설명

구성원 함수는 do_decimal_point를 반환합니다.

예시

// numpunct_decimal_point.cpp
// compile with: /EHsc
#include <locale>
#include <iostream>
#include <sstream>
using namespace std;
int main( )
{
   locale loc( "german_germany" );

   const numpunct <char> &npunct =
   use_facet <numpunct <char> >( loc);
   cout << loc.name( ) << " decimal point "<<
   npunct.decimal_point( ) << endl;
   cout << loc.name( ) << " thousands separator "
   << npunct.thousands_sep( ) << endl;
};
German_Germany.1252 decimal point ,
German_Germany.1252 thousands separator .

numpunct::d o_decimal_point

소수점으로 사용할 로캘별 요소를 반환하기 위해 호출하는 보호된 가상 멤버 함수입니다.

virtual CharType do_decimal_point() const;

Return Value

소수점으로 사용할 로캘별 요소입니다.

예시

decimal_point에 의해 가상 구성원 함수가 호출되는 decimal_point의 예제를 참조하세요.

numpunct::d o_falsename

보호된 가상 멤버 함수는 값의 텍스트 표현으로 사용할 시퀀스를 반환합니다 false.

virtual string_type do_falsename() const;

Return Value

false의 텍스트 표현으로 사용할 시퀀스가 포함된 문자열입니다.

설명

멤버 함수는 문자열 "false"를 반환하여 모든 로캘의 값을 false 나타냅니다.

예시

falsename에 의해 가상 구성원 함수가 호출되는 falsename의 예제를 참조하세요.

numpunct::d o_grouping

소수점 자리 왼쪽의 숫자를 그룹화하는 방법을 결정하는 로캘별 규칙을 반환하기 위해 호출하는 보호된 가상 멤버 함수입니다.

virtual string do_grouping() const;

Return Value

소수점 왼쪽의 숫자를 그룹화할 방법을 결정하기 위한 로캘별 규칙입니다.

설명

보호된 가상 멤버 함수가 소수점 자리 왼쪽의 숫자를 그룹화하는 방법을 결정하는 로캘별 규칙을 반환합니다. 인코딩이 lconv::grouping과 동일합니다.

예시

가상 멤버 함수가 호출grouping되는 그룹화 예제를 참조하세요.

numpunct::d o_thousands_sep

1000 단위 구분 기호로 사용할 로캘별 요소를 반환하기 위해 호출하는 보호된 가상 멤버 함수입니다.

virtual CharType do_thousands_sep() const;

Return Value

1000 단위 구분 기호로 사용할 로캘별 요소를 반환합니다.

설명

보호된 가상 멤버 함수는 소수점 왼쪽의 그룹 구분 기호로 사용할 로캘별 형식 CharType 요소를 반환합니다.

예시

thousands_sep에 의해 가상 구성원 함수가 호출되는 thousands_sep의 예제를 참조하세요.

numpunct::d o_truename

true 값을 텍스트로 표현하는 데 사용할 문자열을 반환하기 위해 호출하는 보호된 가상 멤버 함수입니다.

virtual string_type do_truename() const;

설명

true의 텍스트 표현으로 사용할 문자열입니다.

모든 로캘은 값을 true나타내는 문자열 "true"를 반환합니다.

예시

truename에 의해 가상 구성원 함수가 호출되는 truename의 예제를 참조하세요.

numpunct::falsename

false 값을 텍스트로 표현하기 위해 사용할 문자열을 반환합니다.

string_type falsename() const;

Return Value

falseCharType텍스트 표현으로 사용할 s 시퀀스가 포함된 문자열입니다.

설명

멤버 함수는 문자열 "false"를 반환하여 모든 로캘의 값을 false 나타냅니다.

구성원 함수는 do_falsename을 반환합니다.

예시

// numpunct_falsename.cpp
// compile with: /EHsc
#include <locale>
#include <iostream>
#include <sstream>
using namespace std;
int main( )
{
   locale loc( "English" );

   const numpunct <char> &npunct = use_facet <numpunct <char> >( loc );
   cout << loc.name( ) << " truename "<< npunct.truename( ) << endl;
   cout << loc.name( ) << " falsename "<< npunct.falsename( ) << endl;

   locale loc2( "French" );
   const numpunct <char> &npunct2 = use_facet <numpunct <char> >(loc2);
   cout << loc2.name( ) << " truename "<< npunct2.truename( ) << endl;
   cout << loc2.name( ) << " falsename "<< npunct2.falsename( ) << endl;
}
English_United States.1252 truename true
English_United States.1252 falsename false
French_France.1252 truename true
French_France.1252 falsename false

numpunct::grouping

소수점 왼쪽의 숫자를 그룹화할 방법을 결정하기 위한 로캘별 규칙을 반환합니다.

string grouping() const;

Return Value

소수점 왼쪽의 숫자를 그룹화할 방법을 결정하기 위한 로캘별 규칙입니다.

설명

구성원 함수는 do_grouping을 반환합니다.

예시

// numpunct_grouping.cpp
// compile with: /EHsc
#include <locale>
#include <iostream>
#include <sstream>
using namespace std;
int main( )
{
   locale loc( "german_germany");

   const numpunct <char> &npunct =
       use_facet < numpunct <char> >( loc );
   for (unsigned int i = 0; i < npunct.grouping( ).length( ); i++)
   {
      cout << loc.name( ) << " international grouping:\n the "
           << i <<"th group to the left of the radix character "
           << "is of size " << (int)(npunct.grouping ( )[i])
           << endl;
   }
}
German_Germany.1252 international grouping:
the 0th group to the left of the radix character is of size 3

numpunct::numpunct

numpunct 형식의 개체에 대한 생성자입니다.

explicit numpunct(size_t _Refs = 0);

매개 변수

_심판
개체에 대한 메모리 관리의 유형을 지정하는 데 사용하는 정수 값입니다.

설명

_Refs 매개 변수 및 해당 중요도에 사용할 수 있는 값은 다음과 같습니다.

  • 0: 개체를 포함하는 로캘에 의해 개체의 수명이 관리됩니다.

  • 1: 개체의 수명을 수동으로 관리해야 합니다.

  • > 1: 이러한 값은 정의되지 않습니다.

소멸자는 보호되므로 직접적인 예제는 확인할 수 없습니다.

생성자는 로캘::facet(_Refs)를 사용하여 기본 개체를 초기화합니다.

numpunct::string_type

CharType 형식의 문자가 포함된 문자열을 설명하는 형식입니다.

typedef basic_string<CharType, Traits, Allocator> string_type;

설명

이 형식은 개체가 문장 부호 시퀀스의 복사본을 저장할 수 있는 클래스 템플릿 basic_string 특수화를 설명합니다.

numpunct::thousands_sep

1000 단위 구분 기호로 사용할 로캘별 요소를 반환합니다.

CharType thousands_sep() const;

Return Value

1000 단위 구분 기호로 사용할 로캘별 요소입니다.

설명

구성원 함수는 do_thousands_sep를 반환합니다.

예시

// numpunct_thou_sep.cpp
// compile with: /EHsc
#include <locale>
#include <iostream>
#include <sstream>
using namespace std;
int main( )
{
   locale loc( "german_germany" );

   const numpunct <char> &npunct =
   use_facet < numpunct < char > >( loc );
   cout << loc.name( ) << " decimal point "<<
   npunct.decimal_point( ) << endl;
   cout << loc.name( ) << " thousands separator "
   << npunct.thousands_sep( ) << endl;
};
German_Germany.1252 decimal point ,
German_Germany.1252 thousands separator .

numpunct::truename

true 값을 텍스트로 표현하기 위해 사용할 문자열을 반환합니다.

string_type falsename() const;

Return Value

true의 텍스트 표현으로 사용할 문자열입니다.

설명

구성원 함수는 do_truename을 반환합니다.

모든 로캘은 값을 true나타내는 문자열 "true"를 반환합니다.

예시

// numpunct_truename.cpp
// compile with: /EHsc
#include <locale>
#include <iostream>
#include <sstream>
using namespace std;
int main( )
{
   locale loc( "English" );

   const numpunct < char> &npunct = use_facet <numpunct <char> >( loc );
   cout << loc.name( ) << " truename "<< npunct.truename( ) << endl;
   cout << loc.name( ) << " falsename "<< npunct.falsename( ) << endl;

   locale loc2("French");
   const numpunct <char> &npunct2 = use_facet <numpunct <char> >( loc2 );
   cout << loc2.name( ) << " truename "<< npunct2.truename( ) << endl;
   cout << loc2.name( ) << " falsename "<< npunct2.falsename( ) << endl;
}
English_United States.1252 truename true
English_United States.1252 falsename false
French_France.1252 truename true
French_France.1252 falsename false

참고 항목

<로캘>
facet 클래스
C++ 표준 라이브러리의 스레드 보안