Namespaces
Variants

std::numpunct<CharT>:: ~numpunct

From cppreference.net
ヘッダーで定義 <locale>
protected : ~numpunct ( ) ;

std:: numpunct ファセットを破棄します。このデストラクタは protected かつ仮想関数です( 基底クラス のデストラクタが仮想関数であるため)。 std:: numpunct 型のオブジェクトは、ほとんどのファセットと同様に、このファセットを実装する最後の std::locale オブジェクトがスコープ外になる時、またはユーザー定義クラスが std:: numpunct から派生して public デストラクタを実装している場合にのみ破棄できます。

#include <iostream>
#include <locale>
struct Destructible_numpunct : public std::numpunct<wchar_t>
{
    Destructible_numpunct(std::size_t refs = 0) : numpunct(refs) {}
    // 注: 暗黙のデストラクタはpublic
};
int main()
{
    Destructible_numpunct dc;
    // std::numpunct<wchar_t> c; // コンパイルエラー: protectedデストラクタ
}