當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


Python ctypes.Structure._fields_用法及代碼示例

用法:

_fields_

定義結構字段的序列。這些項目必須是 2 元組或 3 元組。第一項是字段的名稱,第二項指定字段的類型;它可以是任何 ctypes 數據類型。

對於像 c_int 這樣的整數類型字段,可以給出第三個可選項目。它必須是一個小的正整數,定義字段的位寬。

字段名稱在一個結構或聯合中必須是唯一的。此項不勾選,重複名稱時隻能訪問一個字段。

可以定義 _fields_ 類變量 after 定義 Structure 子類的類語句,這允許創建直接或間接引用自身的數據類型:

class List(Structure):
    pass
List._fields_ = [("pnext", POINTER(List)),
                 ...
                ]

然而,_fields_ 類變量必須在第一次使用類型之前定義(創建實例,在其上調用sizeof(),等等)。稍後分配給_fields_ 類變量將引發AttributeError

可以定義結構類型的sub-subclasses,它們繼承基類的字段加上sub-subclass 中定義的_fields_,如果有的話。

相關用法


注:本文由純淨天空篩選整理自python.org大神的英文原創作品 ctypes.Structure._fields_。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。