私は次のコードを試しています。エラーのある行が指摘されています。
int[] myfunction()
{
{
//regular code
}
catch (Exception ex)
{
return {0,0,0}; //gives error
}
}
文字列リテラルのような配列リテラルを返すにはどうすればよいですか?
回答:
new int [] {0,0,0}もうまくいくことがわかりました。私の意見ではもっとはっきりしているでしょう。
Blorgbeardは正しいですが、新しい.NET4.0タプルクラスの使用を検討することもできます。返品するアイテムの数が決まっていると、作業が簡単になることがわかりました。配列内の3つのアイテムを常に返す必要がある場合と同様に、3整数のタプルはそれが何であるかを明確にします。
return new Tuple<int,int,int>(0,0,0);
または単に
return Tuple.Create(0,0,0);
return new List<int>(new int[]{0,0,0});
List<int>(Enumerable.Repeat(0, 3))良くないだろうか?
配列のサイズが固定されていて、ゼロで満たされた新しい配列を返したい場合
return new int[3];
constフィールドに割り当てることができるという点で特別です。これは、配列初期化構文には当てはまりません。