RTL_SPLAY_LINKS結構 (ntddk.h)
RTL_SPLAY_LINKS 結構是不透明的結構,由系統用來表示splay連結樹狀節點。
語法
typedef struct _RTL_SPLAY_LINKS {
struct _RTL_SPLAY_LINKS *Parent;
struct _RTL_SPLAY_LINKS *LeftChild;
struct _RTL_SPLAY_LINKS *RightChild;
} RTL_SPLAY_LINKS;
成員
Parent
這個節點之父節點的不透明指標。 如果 splay 連結樹中只有一個節點存在,這個成員的值就會 NULL。
LeftChild
這個節點左子節點的不透明指標。 如果沒有左子節點存在,這個成員的值會 NULL。
RightChild
這個節點右子節點的不透明指標。 如果沒有任何右子節點存在,則這個成員的值會 NULL。
言論
一般而言,splay 連結樹狀結構的每個節點都包含使用者定義的結構。 每個這類使用者定義節點都必須包含初始化RTL_SPLAY_LINKS結構。 若要初始化RTL_SPLAY_LINKS結構,請呼叫 RtlInitializeSplayLinks 巨集。 (傳遞包含在使用者定義結構內的RTL_SPLAY_LINKS成員位址。
針對具有一或多個節點的splay連結樹狀結構,新的節點通常會初始化,如下所示:
- 使用 RtlLeftChild 和/或 RtlRightChild 來尋找新節點的插入點。 也就是說,取得新節點父節點的正確位址。 (新節點會附加至父節點的左邊或右邊。
- 使用 RtlInitializeSplayLinks,使用上一個步驟中找到的父節點位址來初始化新節點。
- 使用 RtlInsertAsLeftChild 或適當地 RtlInsertAsRightChild,將新節點插入 splay 樹狀結構。
- 使用新節點的位址呼叫 RtlSplay。 (新節點會變成splay樹狀結構的根目錄。
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | 適用於所有支援的 Windows 版本。 |
標頭 | ntddk.h (include Fltkernel.h, Ntifs.h, Ntddk.h) |