ParameterModifier 結構
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
將修飾詞附加至參數,讓系結可以使用已修改類型的參數簽章。
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
- 繼承
- 屬性
範例
以下程式碼範例說明了成員擁有三個字串參數的現象,其中第一和第三個參數是透過參考傳遞。 假設一個名為 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修改。 |