封送處理類別、結構和等位

在 .NET Framework 中類別和結構是相同的。兩者都有欄位、屬性和事件。也可以有靜態和非靜態方法。一個顯著差異為結構是實值型別,而類別是參考型別。

下表列出類別、結構和等位的封送處理選項、說明其用法,以及提供對應之平台叫用範例的連結。

類型 描述 範例

傳值方式的類別

以整數成員做為 In/Out 參數傳遞類別,如 Managed 情況。

SysTime

傳值方式的結構

將結構當成 In 參數傳遞。

Structures

傳址結構

將結構當成 In/Out 參數傳遞。

OSInfo

具有巢狀結構 (扁平式) 的結構

傳遞表示具有 Unmanaged 函式中巢狀結構之結構的類別。結構在 Managed 原型中是扁平化為一個大結構。

FindFile

具有巢狀結構 (非扁平式) 的結構

傳遞具有內嵌結構的結構。

Structures

具有另一個結構指標的結構

傳遞含有第二個結構指標的結構做為成員。

Structures

具有傳值整數的結構陣列

傳遞結構的陣列,只包含做為 In/Out 參數的整數。陣列的成員可以被變更。

Arrays

具有傳址方式的整數和字串的結構陣列

傳遞結構的陣列,包含做為 Out 參數的整數和字串。呼叫的函式會配置陣列的記憶體。

OutArrayOfStructs

具有實值型別的等位

傳遞具有實值型別 (整數和雙精度浮點數) 的等位。

Unions

具有混合型別的等位

傳遞具有混合型別 (整數和字串) 的等位。

Unions

結構中的 Null 值

傳遞 Null 參考 (Visual Basic 中為 Nothing),而非實值型別的參考。

HandleRef

請參閱

概念

平台叫用資料型別
封送處理字串
封送處理型別的陣列
其他封送處理範例

其他資源

使用平台叫用封送處理資料