これはおそらくあなたにとって簡単ですが、私はまだ実際には参照に興味がありません。なぜこれがうまくいかないのかわかりません。正しいスタイルを教えてください。
template <typename T>
void shuffle(T (&array)[], size_t len){};
そして、私はそれを次のように呼ぼうとします:
uint_fast8_t dirBag[4]
Random::shuffle(dirBag, sizeof(dirBag)/sizeof(decltype(dirBag[0])));
エラーは次のとおりです。
Error 1 error C2784: 'void Random::shuffle(T (&)[],size_t)' : could not deduce template argument for 'T (&)[]' from 'uint_fast8_t [4]'