配列の参照渡し(もどき) ― 2010/06/18 06:33

C++ では配列の参照は出来ないので、てっきり雲は配列の参照を関数の引数にすることが出来ない。と思いこんでいました。
が、以下のようにすることで配列の参照(らしきもの)を関数の引数にすることができます。
template<typename T, int size>
void foo( T (&d)[size] )
{
for( int i = 0; i < size; i++ ){
d[i] = i;
}
}
こうしておくと、
int n[10];
foo( n );
として、foo に配列の参照(もどき)を渡すことが出来ます。うううむ。使い道は思いつきませんが、ちょっと、びっくりしました。
コメントをどうぞ
※メールアドレスとURLの入力は必須ではありません。 入力されたメールアドレスは記事に反映されず、ブログの管理者のみが参照できます。
※なお、送られたコメントはブログの管理者が確認するまで公開されません。
※投稿には管理者が設定した質問に答える必要があります。