これを使えば一つしかインスタンスが存在しないことが保証できます。誤って複数作ってしまったりするようなことがないようこのsingletonが使われることが多いです。MyClass();このように書けば普通はいくつもインスタンスが作れます。singletonを使えばnewを使うことが無く、必ずシステムで一つしかインスタンスを持つことができません。それではそのコードを見てみましょう。"singleton";}};デフォルトコンストラクタをprivateにするのがポイントです。デフォルトコンストラクタをprivateにしてしまうと、外部から生成できませんから、普段publicにすると思います。することで、外部から生成できなくすることができます。やってこのクラスを使用するのかというと、Instance関数を使います。本クラスのインスタンスは本クラス内で持っています。外部からはそのインスタンスを貰ってから扱います。get関数は私が勝手に作ったもので、"singleton"という文字列を返すだけの関数ですが、これを外部から呼ぶには、まずSingleton::Instance()を使ってSingletonのインスタンスを取得してから、->get()でアクセスします。main.cppからこれを使っているコードを見てみましょう。0;}このようにして、getを参照します。こんなことをして何が得なのでしょうか。実際に次の「キーを押しているフレーム数を取得する」の節でsingletonを使ってみましょう。コピーコンストラクタと代入演算子のオーバーライドをprivateにすることで完全に唯一になります。