0

配列の値のリストを渡す方法を知っています

   int[] unit = new int[] {1,-3,3,4};
        string[] letter_grade = new string[] {"a+","B","c","W"};
        double totalGPA;
        GPA get = new GPA();
        get.getgpa(unit, letter_grade ,out totalGPA);

しかし、構造体を使用してそれを渡す方法を知りたかったのですが、単一の値を送信することはできますが、値のリストを送信する方法を取得できません

         double totalGPA;
        GPA get = new GPA();
        GPAList[] Val = new GPAList[1];
        Val[0].grade ="d";
        Val[0].unitgrade = 4;
        get.getgpa(Val[0], out totalGPA);
4

2 に答える 2

1

struct配列Valをgetgpaに渡すだけです。

get.getgpa(Val, out totalGPA);

次にgetgpa、GPA構造体の配列を受け入れる必要があります。

void getgpa(GPA[] gpas, out double totalGPA)
于 2012-08-09T16:31:35.977 に答える
0

私があなたの質問を理解している限り、あなたは構造体を使用して値のコレクションを渡したいと思います。

構造体は、コレクションを格納するためのものではありません。配列、配列リスト、ハッシュテーブルなどをc#に格納しているコレクションの場合です。

構造体の目的は、完全な情報を単一のデータ型に表すことです。構造体は単に軽量のクラスであり、コレクションには使用されません。

値のコレクションを格納するために構造体を使用する場合は、構造体の配列を作成する必要があります。

構造体の配列を渡したい場合は、仮パラメータリストで、その構造体自体の配列を期待する必要があります。

**get.getgpa(Val, out totalGPA);**

上記のコードが機能するためには、getgpa関数のシグネチャは次のようになります。

**getgpa(GPA[] arr,out double totalGPA)**

お役に立てれば。

于 2012-08-09T16:40:04.280 に答える