首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

std::wstring_convert::wstring_convert

explicit wstring_convert( Codecvt* pcvt = new Codecvt );

(1)

?

wstring_convert( Codecvt* pcvt, state_type state);

(2)

?

explicit wstring_convert( const byte_string& byte_err, const wide_string& wide_err = wide_string() );

(3)

?

wstring_convert(const std::wstring_convert&) = delete;

(4)

(since C++14)

1%29构造wstring_convert使用Shift状态和错误字符串的默认值使用指定的转换面初始化。

2%29构造wstring_convert对象具有指定的转换面和指定的Shift状态,使用错误字符串的默认构造值。

3%29构造wstring_convert具有指定错误字符串的new Codecvt作为转换面和默认构造的state_type作为换档状态。

4%29复制构造函数被删除,wstring[医]转换不是CopyConstructible

参数

pcvt

-

pointer to the conversion facet of type Codecvt (behavior is undefined if this pointer is null)

state

-

initial value of the conversion shift state

byte_err

-

narrow string to display on errors

wide_err

-

wide string to display on errors

二次

代码语言:javascript
复制
#include <locale>
#include <utility>
#include <codecvt>
 
// utility wrapper to adapt locale-bound facets for wstring/wbuffer convert
template<class Facet>
struct deletable_facet : Facet
{
    using Facet::Facet; // inherit constructors
    ~deletable_facet() {}
};
 
int main()
{
    // UTF-16le / UCS4 conversion
    std::wstring_convert<
         std::codecvt_utf16<char32_t, 0x10ffff, std::little_endian>
    > u16to32;
 
    // UTF-8 / wide string conversion with custom messages
    std::wstring_convert<std::codecvt_utf8<wchar_t>> u8towide("Error!", L"Error!");
 
    // GB18030 / wide string conversion facet
    typedef deletable_facet<std::codecvt_byname<wchar_t, char, std::mbstate_t>> F;
    std::wstring_convert<F> gbtowide(new F("zh_CN.gb18030"));
}

二次

代码语言:txt
复制
 ? cppreference.com

在CreativeCommonsAttribution下授权-ShareAlike未移植许可v3.0。

扫码关注腾讯云开发者

领取腾讯云代金券

http://www.vxiaotou.com