std::codecvt<InternT,ExternT,StateT>::~codecvt
来自 cppreference.cn
定义于头文件 <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 }