ParameterModifier 結構

定義

將修飾詞附加至參數,讓系結可以使用已修改類型的參數簽章。

public value class ParameterModifier
[System.Serializable]
public struct ParameterModifier
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public struct ParameterModifier
public struct ParameterModifier
public readonly struct ParameterModifier
[<System.Serializable>]
type ParameterModifier = struct
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type ParameterModifier = struct
type ParameterModifier = struct
Public Structure ParameterModifier
繼承
ParameterModifier
屬性

範例

以下程式碼範例說明了成員擁有三個字串參數的現象,其中第一和第三個參數是透過參考傳遞。 假設一個名為 obj 的變數包含對 COM 物件的參考。

// Create an array containing the arguments.
object[] args = {"Argument 1", "Argument 2", "Argument 3" };

// Initialize a ParameterModifier with the number of parameters.
ParameterModifier p = new ParameterModifier(3);

// Pass the first and third parameters by reference.
p[0] = true;
p[2] = true;

// The ParameterModifier must be passed as the single element
// of an array.
ParameterModifier[] mods = { p };

// Invoke the method late bound.
obj.GetType().InvokeMember("MethodName", BindingFlags.InvokeMethod,
     null, obj, args, mods, null, null);
' Create an array containing the arguments.
Dim args As Object = {"Argument 1", "Argument 2", "Argument 3" }

' Initialize a ParameterModifier with the number of parameters.
Dim p As New ParameterModifier(3)

' Pass the first and third parameters by reference.
p(0) = True
p(2) = True

' The ParameterModifier must be passed as the single element
' of an array.
Dim mods() As ParameterModifier = { p }

' Invoke the method late bound.
obj.GetType().InvokeMember("MethodName", BindingFlags.InvokeMethod, _
     Nothing, obj, args, mods, Nothing, Nothing)

備註

ParameterModifier此結構用於Type.InvokeMember(String, BindingFlags, Binder, Object, Object[], ParameterModifier[], CultureInfo, String[])方法過載,當參考一個以晚界(late bound)存取的 COM 元件來傳遞參數時。 要透過參考傳遞的參數由單一 ParameterModifier 結構指定,該結構必須在包含單一元素的陣列中傳遞。 此陣列中的單一 ParameterModifier 結構必須以要調用成員中參數數量初始化。 為了表示哪些參數是透過參考傳遞的,請將屬性(C# 中的索引器)的值 Item[] 設為 true ,對應於參數零為基礎的位置。

建構函式

名稱 Description
ParameterModifier(Int32)

初始化一個代表指定參數數量的新 ParameterModifier 結構實例。

屬性

名稱 Description
Item[Int32]

取得或設定一個值,指定該參數在指定索引位置是否要被當前 ParameterModifier修改。

適用於