簡體   English   中英

`typedef` 在這種情況下是什么意思

[英]What does `typedef` mean in this context

我確信這個問題以前被問過。 但我想知道這段代碼中的typedef是什么意思:

typedef long (*HASH_CONS_HASH)(void *);
typedef bool (*HASH_CONS_EQUAL(void *, void *));

到目前為止,我了解:

  • HASH_CONS_HASH是一個 function 需要一個void*並返回long
  • HASH_CONS_EQUAL是一個 function ,它接受兩個void*類型的 arguments 並返回bool

但是typedef在這里是什么意思呢? 有必要嗎?

它聲明了 function 指針類型

現在你可以定義HASH_CONS_HASH func1; 其中 func1 是指向 function 返回 long 且不帶任何參數的指針

HASH_CONS_EQUAL func2; 其中func2是指向 function 的指針,返回bool並將兩個 void 指針作為參數。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM