struct
可以用來組織個複雜的自訂型別。
就和大多數的程式語言一樣,Zig 也有 struct
,可以用來組合其它型別成為一個新的型別。和 C 不同、但是和 Rust 類似的是,Zig 可以為 struct
實作函式(在 Zig 中稱為方法 method),這使得它很接近 OOP 中的 Class。
純 C 真的要包含函式的 struct
的話也可以用指標函式來達成,但這種做法不常見。
基本
使用 const
來宣告 struct
:
方法
可以為 struct
定義 method:
目前成員方法不用加 pub
也可被外部存取,我不確定是原本設計就是如此還是 bug。
靜態方法或建構子:
預設值
可以自訂預設值:
嵌套
如果要建構複雜的 struct
,也可以互相嵌套:
參考
本文以 Zig 0.13.0
為主。並同時發佈在:
留言可能不會立即顯示。若過了幾天仍未出現,請 Email 聯繫:)