与えられたテンプレート値によってサイズを決定する必要がある静的配列を使用しようとしています。しかし、プログラムの実行時にはサイズが一定になるので、std::vector
を使わないことに決めました。テンプレートの値から決定された静的配列サイズ
template<uint32_t BAR_WIDTH>
class Bar
{
//do_stuff...
Foo mapper[ [&]()->int{ uint32_t tmp = BAR_WIDTH/Foo:FOO_EDGE; return (BAR_WIDTH % 10 == 0) ? tmp : tmp + 1; }; ];
};
FOO_EGDE
は静的な値です。 IDEは、私はそれがstd::vector
を使用せずにこのように動作させることができる場合、私は疑問に思う私に
配列サイズの式(*)の代わりにint型の整数型を持たなければならないというヒント()
を与えます。アドバイスは歓迎され、評価されます。
エラーメッセージあなたの問題を言っている - あなたの配列sizeは整数ではなく、引数を取らずに 'int'を返すラムダです。 – Chowlett