次の方法で共有


CodeParameterDeclarationExpression クラス

メソッド、プロパティ、またはコンストラクタのパラメータ宣言を表します。

この型のすべてのメンバの一覧については、CodeParameterDeclarationExpression メンバ を参照してください。

System.Object
   System.CodeDom.CodeObject
      System.CodeDom.CodeExpression
         System.CodeDom.CodeParameterDeclarationExpression

<Serializable>
<ClassInterface(ClassInterfaceType.AutoDispatch)>
<ComVisible(True)>
Public Class CodeParameterDeclarationExpression   Inherits CodeExpression
[C#]
[Serializable]
[ClassInterface(ClassInterfaceType.AutoDispatch)]
[ComVisible(true)]
public class CodeParameterDeclarationExpression : CodeExpression
[C++]
[Serializable]
[ClassInterface(ClassInterfaceType::AutoDispatch)]
[ComVisible(true)]
public __gc class CodeParameterDeclarationExpression : public   CodeExpression
[JScript]
public
   Serializable
 ClassInterface(ClassInterfaceType.AutoDispatch)
 ComVisible(true)
class CodeParameterDeclarationExpression extends   CodeExpression

スレッドセーフ

この型の public static (Visual Basicでは Shared) のすべてのメンバは、マルチスレッド操作で安全に使用できます。インスタンスのメンバの場合は、スレッドセーフであるとは限りません。

解説

CodeParameterDeclarationExpression を使用して、メソッド、プロパティ、またはコンストラクタのパラメータを宣言するコードを表すことができます。

Name プロパティは、パラメータの名前を指定します。 Type プロパティは、パラメータのデータ型を指定します。 Direction プロパティは、パラメータの方向修飾子を指定します。 CustomAttributes プロパティは、パラメータに関連付けられる属性を指定します。

使用例

[Visual Basic, C#, C++] CodeParameterDeclarationExpression を使用して、異なる FieldDirection フィールド参照型指定子を使用したメソッドのパラメータを宣言する例を次に示します。

 
' Declares a method.
Dim method1 As New CodeMemberMethod()
method1.Name = "TestMethod"

' Declares a string parameter passed by reference.
Dim param1 As New CodeParameterDeclarationExpression("System.String", "stringParam")
param1.Direction = FieldDirection.Ref
method1.Parameters.Add(param1)

' Declares a Int32 parameter passed by incoming field.
Dim param2 As New CodeParameterDeclarationExpression("System.Int32", "intParam")
param2.Direction = FieldDirection.Out
method1.Parameters.Add(param2)

' A Visual Basic code generator produces the following source code for the preceeding example code:
 
'     Private Sub TestMethod(ByRef stringParam As String, ByRef intParam As Integer)
'    End Sub

[C#] 
// Declares a method.
CodeMemberMethod method1 = new CodeMemberMethod();
method1.Name = "TestMethod";

// Declares a string parameter passed by reference.
CodeParameterDeclarationExpression param1 = new CodeParameterDeclarationExpression("System.String", "stringParam");
param1.Direction = FieldDirection.Ref;
method1.Parameters.Add(param1);

// Declares a Int32 parameter passed by incoming field.
CodeParameterDeclarationExpression param2 = new CodeParameterDeclarationExpression("System.Int32", "intParam");
param2.Direction = FieldDirection.Out;
method1.Parameters.Add(param2);

// A C# code generator produces the following source code for the preceeding example code:

//        private void TestMethod(ref string stringParam, out int intParam) {
//        }

[C++] 
// Declares a method.
CodeMemberMethod* method1 = new CodeMemberMethod();
method1->Name = S"TestMethod";

// Declares a string parameter passed by reference.
CodeParameterDeclarationExpression* param1 = new CodeParameterDeclarationExpression(S"System.String", S"stringParam");
param1->Direction = FieldDirection::Ref;
method1->Parameters->Add(param1);

// Declares a Int32 parameter passed by incoming field.
CodeParameterDeclarationExpression* param2 = new CodeParameterDeclarationExpression(S"System.Int32", S"intParam");
param2->Direction = FieldDirection::Out;
method1->Parameters->Add(param2);

// A C# code generator produces the following source code for the preceeding example code:

//        private void TestMethod(ref string stringParam, out int intParam) {
//        }

[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

名前空間: System.CodeDom

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ

アセンブリ: System (System.dll 内)

参照

CodeParameterDeclarationExpression メンバ | System.CodeDom 名前空間 | CodeParameterDeclarationExpressionCollection