のうち、constの配列を構築することは、私はクラスでプライベートconstexprのを次している引数のために仮定しますconstexprの
static constexpr uint16_t square_it(uint16_t x)
{
return std::pow(x, 2);
}
その後、私は255までの整数のため、これらの値の静的定数配列を構築したいです上記constexprの使用して、同じクラスの同じセクション:
static const uint16_t array_of_squares[256] =
{
//something
};
を私は、可能な場合は、配列はコンパイル時ではなく、実行時に構築することにしたいと思います。私は最初の問題は、constexprでstd :: powのような式を使用することは、ドメインエラーを返すことができるので、有効なISO C++(arm-gccによって許可されていますか?私が使用したい実際の式は、std :: expを含むやや複雑な関数です。
小さなマイクロプロセッサであるCortex M4用にコンパイルしているので、私はstdライブラリをあまり利用できません。
プリプロセッサマクロを使用すると、より適切な方法がありますか?私は、外部Pythonスクリプトのようなものを、開発中に変更する必要があるたびにテーブルを計算し、それを貼り付けることを避けたいと思っています。
外部のPythonスクリプトでテーブルを計算し、ビルドで直接使用できるC++ファイルを作成します。コピー/貼り付けは不要です。 –