私はアプリケーション用のロガーを作成しています。私はサードパーティのロガーライブラリを使用しています。どのロガーがシングルトンとして実装されているか。シングルトンクラスの拡張が間違っていますか?
スタティック関数をいくつか追加したいので、そのロガークラスを拡張しました。これらの静的関数では、私は内部的に(私が継承した)Loggerのインスタンス(単一のインスタンス)を使用します。
私はMyLoggerのインスタンスを作成せず、スーパークラスのgetInstance()メソッドも再実装しません。 しかし、親クラス(Loggger)デストラクタにアクセスできないため、MyLoggerのデストラクタを作成できないような警告が表示されています。
ご存知ですか、 私は何か間違っていますか? シングルトンを継承するのは間違っているか、避けるべきですか?
私はC++言語を使用しています。私はシングルトンLoggerクラスから継承しない静的メソッドのみのラッパークラスを作成することを考えています。どうですか?? そして、上記のC++の方法について詳しく説明してください。 ありがとうございます。 – EngineeredBrain
@AnwarShaikhこれも機能します。フリースタンディング機能が利用できないため、これはJavaで行います。私はC++でそのルートをやっていますが、追加している関数の中で状態やその他の実装の詳細を共有する必要がある場合に限ります。 – dasblinkenlight
ありがとうございました!私はその上にラッパーを書くことによって試みます。 – EngineeredBrain