C ++でクラスの静的配列メンバーを初期化するより良い方法です(ただし、constは望ましいでしょう)

私はクラスのメンバとして関数へのポインタの静的な配列を持っています。

私はそれを初期化する必要がありますが、この配列は64Kの項目が長いので、 {x、y、z、...}
のような静的初期化子で初期化するのは実用的ではありませんコード。

私は代わりにいくつかのループで、コードで初期化する必要があります。

これを行う方法は、コンストラクタの static
配列を初期化してフラグを設定することです。したがって、クラスの最初のインスタンスの構築だけがこの初期化を起動します。

また、インスタンス内からこの静的フラグにアクセスすることはスレッドセーフではありませんが、それは別の話です。

これを行うためのよりクリーンな方法がありますか?

この配列を const にしたいと思っていますが、これを行う唯一の方法は static
{}
の初期化です

ベストアンサー

別のオプションは、コード生成を使用することです:静的配列の定義のソースコードを生成する別のプログラムを作成します。

コメントする

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です