C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト


(過去ログ 93 を表示中)
■55366 / )  クラス間で大量のパラメタをやりとりする
□投稿者/ jun (3回)-(2010/11/28(Sun) 15:09:55)

分類:[VB.NET/VB2005 以降] 

VB2010

お世話になります。
VBというか、オブジェクト指向そのものが理解できておらず、
周りにも有識者がいなく、作りとして良いか悪いか判断できないため、
投稿させていただきました。

現在、画面で設定された値をもとに、複数の定義体を作成するツールを作成しており、
画面で設定されたパラメタをどのように他クラスへ渡すのが良いのか悩んでおります。

以下のソースでは、画面の値をすべて GamenParam に格納して、それを他クラスへ
渡す際、コンストラクター渡ししており、この部分で悩んでおります。
また、GamenParam内で、構造体を使用していますが、構造体は値型であるため、
大量のデータを受け渡す場合には向いていないような感じもしています。
このような場合、皆様はどのようにされているのでしょうか?
ご意見を頂けたらと思います。

よろしくお願いします。

Public Class Form1
    Private Sub Button1_Click(・・・
       Dim param As New GamenParam
       '★ここで画面の入力値を param に格納
       Dim c1 As New Class1(param)
       c1.Class1_Run()
       Dim c2 As New Class2(param)
        c2.Class2_Run()
    End Sub
End Class

Public Class Class1
    Private _param As GamenParam
    Public Sub New(ByVal p As GamenParam)
        _param = p
    End Sub
    Public Sub Class1_Run()
        Console.WriteLine(_param.kojin(0).name & " : " & _param.kojin(0).addr)
    End Sub
End Class

Public Class Class2
    Private _param As GamenParam
    Public Sub New(ByVal p As GamenParam)
        _param = p
    End Sub
    Public Sub Class2_Run()
        Console.WriteLine(_param.kojin(1).name & " : " & _param.kojin(1).age)
    End Sub
End Class

Public Class GamenParam
    Public outPath As String
    Public kojin As Generic.List(Of stKojin)
End Class

Public Structure stKojin
    Public name As String
    Public addr As String
    Public age As Integer
End Structure

返信 編集キー/


管理者用

- Child Tree -