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
값false
의 CharType
텍스트 표현으로 사용할 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