linkedlist.h
来自「idbot08源码」· C头文件 代码 · 共 55 行
H
55 行
//
#pragma once
#include <windows.h>
typedef class LinkedItem LinkedItem, *PLinkedItem;
BOOL __stdcall IsValidListItem(PLinkedItem li);
class LinkedItem
{
friend class LinkedList;
private:
PLinkedItem pPrev;
PLinkedItem pNext;
LPVOID lpData;
int nLockData;
CRITICAL_SECTION csMutex;
public:
LinkedItem();
~LinkedItem();
LPVOID GetData(BOOL bLock = FALSE) const;
LPVOID& GetData(BOOL bLock = TRUE);
BOOL SetData(LPVOID pData);
int LockData();
int UnlockData();
BOOL IsDataLocked();
};
class LinkedList
{
protected:
PLinkedItem pFirst;
PLinkedItem pLast;
UINT cItemCount;
CRITICAL_SECTION csMutex;
public:
LinkedList();
virtual ~LinkedList();
virtual PLinkedItem AddItem(LPVOID lpData);
virtual PLinkedItem InsertItem(PLinkedItem pItem, LPVOID lpData);
virtual PLinkedItem RemoveItem(PLinkedItem pItem, BOOL bUnlock = FALSE);
PLinkedItem GetFirstItem();
PLinkedItem GetLastItem();
PLinkedItem GetPrevItem(PLinkedItem pItem);
PLinkedItem GetNextItem(PLinkedItem pItem);
UINT GetItemCount();
virtual void RemoveAll();
};
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?