1

私はしばらくの間プログラミングを行ってきましたが、基本的な質問がいくつかあります。そのうちの 1 つは次のとおりです。

Public Class PriceListDetails
    Dim pricelist As BSPLib.PriceLists.PriceList
    Dim IsReadOnly1 As Boolean

    Public Sub New(ByVal IsReadonly2 As Boolean)

        ' This call is required by the designer.
        InitializeComponent()

        ' Add any initialization after the InitializeComponent() call.

        'Readonly prevents from Modifying/Saving
        IsReadOnly1 = IsReadonly
    End Sub
End Class

IsReadyOnly1 と IsReadyOnly2 を作成することは必須ですか? 参照型のように、新しいメソッドから IsReadyOnly1 に直接パラメーターを取得する方法はありますか?

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

4

3 に答える 3

2

投稿されたコードはコンパイルできません。私はあなたがこれを意味すると思います:

Private IsReadOnly As Boolean

Public Sub New(ByVal IsReadOnly As Boolean)
    InitializeComponent()
    Me.IsReadOnly = IsReadOnly
End Sub

Meキーワードにより、パラメーターの代わりにフィールドが確実に割り当てられます

于 2012-05-02T17:10:25.407 に答える
2

コンストラクター パラメーターを使用してメンバーを設定することは、OOP ではかなり一般的な方法です。ただし、パブリック プロパティを使用している場合は、オブジェクト初期化子も使用できます。

Dim priceList1 = New PriceListDetails With {.IsReadOnly = True}
于 2012-05-02T17:12:28.060 に答える
0

Boolean は参照型の変数ではないのでありえません。

参照をコピーする場合は、両方の変数も必要です。IsReadonly2 のみを参照できます。

于 2012-05-02T17:10:56.530 に答える