codecvt::out
내부 시퀀스로 변환 CharType일련의 외부 s 바이트s.
result out(
StateType& _State,
const CharType* _First1,
const CharType* _Last1,
const CharType*& _Next1,
Byte* _First2,
Byte* _Last2,
Byte*& _Next2
) const;
매개 변수
_State
멤버 함수 호출 간에 유지 되는 변환 상태입니다._First1
변환할 시퀀스의 시작 부분에 대 한 포인터입니다._Last1
변환할 시퀀스의 끝에 대 한 포인터입니다._Next1
참조 하는 포인터를 첫 번째 변환 되지 않은 CharType 후 마지막 CharType 변환 합니다._First2
변환 된 시퀀스의 시작 부분에 대 한 포인터입니다._Last2
변환 된 시퀀스의 끝에 대 한 포인터입니다._Next2
참조 하는 포인터를 첫 번째 변환 되지 않은 바이트 마지막 변환 후 바이트.
반환 값
The member function returns do_out(_State, _First1, _Last1, _Next1, _First2, _Last2, _Next2).
설명
자세한 내용은 codecvt::do_out를 참조하십시오.
예제
// codecvt_out.cpp
// compile with: /EHsc
#define _INTL
#include <locale>
#include <iostream>
#include <wchar.h>
using namespace std;
#define LEN 90
int main( )
{
char pszExt[LEN+1];
wchar_t *pwszInt = L"This is the wchar_t string to be converted.";
memset( &pszExt[0], 0, ( sizeof( char ) )*( LEN+1 ) );
char* pszNext;
const wchar_t* pwszNext;
mbstate_t state;
locale loc("C");//English_Britain");//German_Germany
int res = use_facet<codecvt<wchar_t, char, mbstate_t> >
( loc ).out( state,
pwszInt, &pwszInt[wcslen( pwszInt )], pwszNext ,
pszExt, &pszExt[wcslen( pwszInt )], pszNext );
pszExt[wcslen( pwszInt )] = 0;
cout << ( ( res!=codecvt_base::error ) ? "It worked: " : "It didn't work: " )
<< "The converted string is:\n ["
<< &pszExt[0]
<< "]" << endl;
}
요구 사항
헤더: <locale>
네임 스페이스: std