私はこのコードを使用するべきだと思いますが、そうではありません!基本クラスの配列メンバ変数を基本クラスのコンストラクタから初期化するクラステンプレート値
class base
{
std::array<uint8_t, 8> m_ID;
public:
base(std::array<uint8_t, 8> id) :m_ID(id)
{
}
}
template<char ...Ts>
class derived:base(Ts...)
{
}
class MyClass: public derived<'1','2','3','4','5','6','7','8'>
{
}
どうすればいいですか?私はテンプレート値からID値を渡すことができます。
MyClassが完全ではないというエラーが発生しています。 (不完全なタイプが許可されていません)
私は、基数が8個の値の配列を持ち、それがパラメータパックから設定されていることが奇妙であることがわかります。ユーザーが8個以上のパラメータを提供する場合はどうなりますか? –