C での配列の参照渡し
C での配列の参照渡しは、適切な構文を使用することで実現できます。質問で提供されているコード スニペットは、構文が間違っているため、コンパイラ エラーを引き起こします。
配列を参照によって渡す正しい方法は、次の形式を使用することです:
void foo(double(&&bar)[10]);
この構文bar が 10 個の double 要素の配列への参照であることを示します。配列を参照渡しすると、メソッド foo は配列の要素を変更して呼び出し元に返すことができます。
ただし、このアプローチには制限があります。呼び出し元は要素が 10 個だけの配列を渡すように制限されます。これを解決するには、テンプレート関数を使用できます。
template<typename T, size_t N> void foo(T(&&bar)[N]);
このテンプレートはコンパイル時に配列のサイズを取得し、呼び出し元が任意のサイズの配列を渡すことができるようにします。
または、 std::vector を使用すると、任意のサイズの配列を渡したり変更したりするためのより柔軟な方法が提供されます。 C 11 以降では、固定サイズの配列に std::array を使用することもできます。
以上がC で配列を参照渡しするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。