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

わんくま同盟

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

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

■94246 / 1階層)  メソッド内の実行コードを引数にて指定する方法
□投稿者/ 魔界の仮面弁士 (2646回)-(2020/03/26(Thu) 14:29:42)
No94244 (Mira さん) に返信
> メソッド内の一部のコードを呼び出し時に指定するような技法があったと記憶していますが
> 名称がわからず検索うまくできません

デリゲート、イベント、ラムダ式、式木、字句解析などの手段があります。


Sub Main()
  Dim C1 As Integer = Sample("A+B")
  Dim C2 As Integer = Sample("A-B")
End Sub

Function Sample(Expression As String) As Integer
  Dim A As Integer = 1
  Dim B As Integer = 2
  Dim tbl As New DataTable()
  tbl.Columns.Add("A", GetType(Integer))
  tbl.Columns.Add("B", GetType(Integer))
  tbl.Columns.Add("C", GetType(Integer), Expression)
  tbl.Rows.Add(A, B).AcceptChanges()
  Return CInt(tbl.Rows(0)!C)
End Function

------------

Function Sample(Proc As Func(Of Integer, Integer, Integer)) As Integer
  Dim A As Integer = 1
  Dim B As Integer = 2
  Return Proc(A, B)
End Function


Sub Main()
  Dim C1 As Integer = Sample(Function(x, y) x + y)
  Dim C2 As Integer = Sample(Function(x, y) x - y)
End Sub
編集キー/

前の記事(元になった記事) 次の記事(この記事の返信)
←メソッド内の実行コードを引数にて指定する方法 /Mira 返信無し
 
上記関連ツリー

メソッド内の実行コードを引数にて指定する方法 / Mira (20/03/26(Thu) 14:13) #94244
メソッド内の実行コードを引数にて指定する方法 / 魔界の仮面弁士 (20/03/26(Thu) 14:29) #94246 ←Now
Re[1]: メソッド内の実行コードを引数にて指定する方法 / Hongliang (20/03/26(Thu) 14:24) #94245
  └ Re[2]: メソッド内の実行コードを引数にて指定する方法 / Mira (20/03/26(Thu) 14:40) #94247 解決済み

上記ツリーを一括表示 / 上記ツリーをトピック表示
 
上記の記事へ返信