std:: money_put
|
헤더에 정의됨
<locale>
|
||
|
template
<
class
CharT,
|
||
클래스
std::money_put
는 통화 값을 문자열로 포맷팅하는 규칙을 캡슐화합니다. 표준 I/O 조정자
std::put_money
는 I/O 스트림의 로캘에 있는
std::money_put
패싯을 사용합니다.
상속 다이어그램
만약
std::money_put
특수화가 표준 라이브러리에서 제공된다는 보장이 없는 경우(아래 참조), 해당
put()
및
do_put()
함수의 동작은 명세된 대로 보장되지 않습니다.
목차 |
특수화
표준 라이브러리는 다음과 같은 특수화를 제공함을 보장합니다 (이들은 모든 locale 객체에 의해 구현되어야 하는 요구사항 입니다):
|
헤더 파일에 정의됨
<locale>
|
|
| std :: money_put < char > | 화폐 값의 좁은 문자열 표현을 생성함 |
| std :: money_put < wchar_t > | 화폐 값의 넓은 문자열 표현을 생성함 |
또한, 표준 라이브러리는 다음 타입 요구사항을 충족하는 모든 특수화를 제공하는 것도 보장됩니다:
-
CharT는 다음 중 하나입니다:- char ,
- wchar_t , 그리고
- 구현에서 정의된 다른 문자 컨테이너 타입 으로, iostream 컴포넌트 가 인스턴스화될 수 있는 문자 요구사항을 충족하는 타입; 그리고
-
OutputIt는 LegacyOutputIterator 요구사항을 충족해야 합니다.
중첩 타입
| 유형 | 정의 |
char_type
|
CharT
|
string_type
|
std:: basic_string < CharT > |
iter_type
|
OutputIt
|
데이터 멤버
| 멤버 | 설명 |
std::locale::id
id
[static]
|
facet 의 식별자 |
멤버 함수
새로운
money_put
패싯을 생성함
(public member function) |
|
do_put
을 호출함
(public member function) |
보호된 멤버 함수
money_put
패싯을 파괴함
(protected member function) |
|
|
[virtual]
|
금전 값을 형식화하고 출력 스트림에 기록함
(virtual protected member function) |
예제
#include <iomanip> #include <iostream> #include <iterator> #include <locale> int main() { // I/O 조정자 사용 std::cout.imbue(std::locale("en_US.UTF-8")); std::cout << "American locale: " << std::showbase << std::put_money(12345678.9) << '\n'; // 패싯 직접 사용 std::cout.imbue(std::locale("de_DE.UTF-8")); std::cout << "German locale: "; auto& f = std::use_facet<std::money_put<char>>(std::cout.getloc()); f.put({std::cout}, false, std::cout, std::cout.fill(), 12345678.9); std::cout << '\n'; }
출력:
American locale: $123,456.79 German locale: 123.456,79 €
결함 보고서
다음 동작 변경 결함 보고서는 이전에 발표된 C++ 표준에 소급 적용되었습니다.
| DR | 적용 대상 | 게시된 동작 | 올바른 동작 |
|---|---|---|---|
| LWG 427 | C++98 |
money_put
은 모든
CharT
를 수용하도록 보장됨
(iostream 구성 요소가 인스턴스화될 수 있는 모든 문자 요구사항을 충족하는 경우) |
char
,
wchar_t 및 다른 구현 정의 문자 타입만 수용하도록 보장 |
| LWG 2392 | C++98 |
문자 타입
CharT
만이
money_put
에 의해 수용될 수 있음이 보장됨
|
구현 정의 문자 컨테이너 타입도
수용할 수 있음이 보장될 수 있음 |
참고 항목
|
std::money_get
및
std::money_put
에서 사용되는 통화 서식 매개변수를 정의함
(클래스 템플릿) |
|
|
입력 문자 시퀀스에서 통화 값을 구문 분석하고 구성함
(클래스 템플릿) |
|
|
(C++11)
|
통화 값을 서식화하고 출력함
(함수 템플릿) |