命名空间
变体
操作

std::codecvt<InternT,ExternT,StateT>::~codecvt

来自 cppreference.cn
< cpp‎ | locale‎ | codecvt
 
 
 
 
 
定义于头文件 <locale>
protected: ~codecvt();

析构一个 std::codecvt 侧面 (facet)。此析构函数是受保护的且为虚函数(因为 基类 析构函数为虚函数)。std::codecvt 类型的对象,如同大多数侧面 (facet) 一样,仅能在实现此侧面 (facet) 的最后一个 std::locale 对象离开作用域时,或者在用户定义的类派生自 std::codecvt 并实现了一个公共析构函数时被销毁。

[编辑] 示例

#include <iostream>
#include <locale>
 
struct Destructible_codecvt : public std::codecvt<wchar_t, char, std::mbstate_t>
{
    Destructible_codecvt(std::size_t refs = 0) : codecvt(refs) {}
    // note: the implicit destructor is public
};
 
int main()
{
    Destructible_codecvt dc;
    // std::codecvt<wchar_t> c; // compile error: protected destructor
}