Namespaces
Variants

std::messages<CharT>:: ~messages

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

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

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