私は、Javaのキューのインターフェースに等しい.hファイルの例を示す本を読みました。
void InitQueue(Queue* pQueue, int iSize);
bool Insert(Queue* pQueue, const Item* pItem);
bool Extract(Queue* pQueue, Item** pItem);
bool GetFirst(const Queue* pQueue, Item** pItem);
bool IsFull(const Queue* pQueue);
bool IsEmpty(const Queue* pQueue);
私は2つのことを理解していませんでした:
- なぜ
Extract, GetFirst
2番目の引数は型Item**
であり、ではないのItem*
ですか?私たちがそのようなことを書いたとき、どういう意味ですか? - 一部の関数(
IsFull, IsEmpty
、..)で、const Queue*
単純ではなく引数として取得するのはなぜQueue*
ですか?