命名空间
变体
操作

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

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

销毁一个 std::codecvt 面(facet)。此析构函数是受保护的虚函数(因为其基类析构函数是虚函数)。一个 std::codecvt 类型的对象,像大多数面一样,只能在最后一个实现此面的 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
}