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

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

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

Re[2]: 最初に実行されるコード


(過去ログ 147 を表示中)

[トピック内 5 記事 (1 - 5 表示)]  << 0 >>

■85817 / inTopicNo.1)  最初に実行されるコード
  
□投稿者/ パラゴン (1回)-(2017/11/27(Mon) 11:51:04)

分類:[.NET 全般] 




Private aaa As Single = 4

などのコードを書いておくと、
そのモジュール内の全てのSubが実行される前に
変数に数値が代入されます。


Private Labels As New Dictionary(Of String, String)()

Private Sub LabelsInit()

Labels.Add("g/cm^3", "Density")
Labels.Add("N", "Force")

End Sub

というようなSubを最初に実行されるようにしたいのですが
どのようにすれば良いですか?





引用返信 編集キー/
■85818 / inTopicNo.2)  Re[1]: 最初に実行されるコード
□投稿者/ Hongliang (575回)-(2017/11/27(Mon) 11:58:03)
http://smdn.jp/programming/vb.net/module/
に説明されているNew()はどうでしょうか?
引用返信 編集キー/
■85819 / inTopicNo.3)  Re[1]: 最初に実行されるコード
□投稿者/ 魔界の仮面弁士 (1481回)-(2017/11/27(Mon) 12:12:48)
No85817 (パラゴン さん) に返信
> というようなSubを最初に実行されるようにしたいのですが

VB2010 以降であれば、このように書けますよ。

Private Labels As New Dictionary(Of String, String)() From {{"g/cm^3", "Density"}, {"N", "Force"}}
引用返信 編集キー/
■85820 / inTopicNo.4)  Re[1]: 最初に実行されるコード
□投稿者/ shu (1071回)-(2017/11/27(Mon) 13:28:34)
2017/11/27(Mon) 13:29:30 編集(投稿者)
No85817 (パラゴン さん) に返信
> 
> 
> 
> Private aaa As Single = 4
> 
> などのコードを書いておくと、
> そのモジュール内の全てのSubが実行される前に
> 変数に数値が代入されます。
> 
> 
>     Private Labels As New Dictionary(Of String, String)()
> 
>     Private Sub LabelsInit()
> 
>         Labels.Add("g/cm^3", "Density")
>         Labels.Add("N", "Force")
> 
>     End Sub
> 
> というようなSubを最初に実行されるようにしたいのですが
> どのようにすれば良いですか?
> 

必要になるまでインスタンスを作成しないならこんな方法もあります。
使うときはLabelsを使って、_Labelsを使わないようにします。

    Private _Labels As Dictionary(Of String, String) = Nothing

    Private ReadOnly Property Labels() As Dictionary(Of String, String)
        Get
            If _Labels Is Nothing Then
                _Labels = New Dictionary(Of String, String)()
                LabelsInit()
            End If
            Return _Labels
        End Get
    End Property

    Private Sub LabelsInit()

        _Labels.Add("g/cm^3", "Density")
        _Labels.Add("N", "Force")

    End Sub

 

引用返信 編集キー/
■85821 / inTopicNo.5)  Re[2]: 最初に実行されるコード
□投稿者/ パラゴン (2回)-(2017/11/27(Mon) 18:05:40)
Newで解決しました
ご回答ありがとうございます。

解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -