Namespaces
Variants

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

From cppreference.net
定义于头文件 <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) {}
    // 注意:隐式析构函数是公开的
};
int main()
{
    Destructible_codecvt dc;
    // std::codecvt<wchar_t> c; // 编译错误:受保护的析构函数
}