Direct3Dは1アプリケーションで2つ扱うことがない(できなくはないが、やるなとMSが言っている)から、staticで十分かと。
気分の問題程度だよね。
あとs_listはprivateでいいよね。

あと、>>68のはせっかくコンストラクタとデストラクタで登録/削除処理してたのに、自前で登録関数呼ぶことになっちゃうよね。
趣旨理解してないぞ