2011-01-12 16 views
1

を宣言し、私が作成したクラスと呼ばれるのMyClass:C#の機能

public class MyClass 
{ public int MyInt {get;set;} 
    public int MyInt2 {get;set;} 
} 

は、今私は、パラメータとしてint型を受け入れ、それはMyClassのオブジェクトのリストを返す関数を作成したいと思います。

シンタックスが詰まっています。 public static List<MyClass> MyFunction (int MyParam)はですか?私は知覚されていません。

ありがとうございました。

答えて

3

あなたが最も可能性が高いとします

public static List<MyClass> MyFunction(int myParam) 
{ 
    // .... 

List<MyClass>は、MyClassののリストについては、(それの型安全なので)最良の選択肢である一般的なリストです。ファイルの先頭にusing System.Collections.Generic;を追加する(または完全に修飾する)必要があります。

+1

リスト部分にインテリセンスがない場合は、 "using System.Collections.Generic;"ファイル/名前空間の先頭に。 – Reddog

+1

戻り値の型が「IList 」の場合、柔軟性が向上する可能性があります。開発者がそれを必要としなくても、インターフェイスの理解に向けて少し揺れても害はありません。 – David

+0

@David:True - 'IEnumerable 'がさらに優れている可能性があります。 (ただし、 'List 'は、フレームワークの「特殊な」ケースとしてよく使われ、ToList()のようなメソッドは 'IList 'を返す可能性がありますが...) –

0

public static List<MyClass> MyFunction(int myParam) { }は、intパラメータを受け入れ、MyClassインスタンスのリストを返すようなok構文です。

インテリセンスサポートが得られない場合(VS.NETを使用していると仮定して)、ソースコードに構文エラーがある可能性があります。

インテリセンスといえば、VS.NETのソースファイルでCtrl + .を入力した場合、VS.NETはそのタイプを自動的に検索し、ソースファイルにusingステートメントを追加します。