[問題] 請問一行typedef
開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
VC++
額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
呃...這應該不重要
問題(Question):
我在NeHeGL的範例中讀到一行碼長這樣
typedef int (*compfn)(const void*, const void*);
上網看其他人對於typedef的解釋,通常用在把某個type代換成好記的字
或是用來寫某個struct
不過這一行我看得實在是很霧煞煞
懇請鄉民好心解釋一下這一行在做什麼?
請假設原po是從Java國之類外地移民,對於C++完全不熟....
謝謝 m(_ _)m
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.42.238.47
推
08/12 02:25, , 1F
08/12 02:25, 1F
→
08/12 02:26, , 2F
08/12 02:26, 2F
→
08/12 02:27, , 3F
08/12 02:27, 3F
→
08/12 02:28, , 4F
08/12 02:28, 4F
→
08/12 02:28, , 5F
08/12 02:28, 5F
推
08/12 02:30, , 6F
08/12 02:30, 6F
謝謝
我嘗試把我的理解跟仍然不清楚的地方寫出來
typedef int (*compfn)(const void*, const void*);
↑ ↑ ↑這個括號裡頭裝該函數的傳入參數
│ └ 這是指向該函數的指標
└這是該函數回傳的型態
就是說可以用compfn宣告一個function的指標
它指向的function遵從上面寫的規則,這樣子?
void* 是什麼?
※ 編輯: p52189 來自: 114.42.238.47 (08/12 02:46)
→
08/12 07:19, , 7F
08/12 07:19, 7F
→
08/12 07:21, , 8F
08/12 07:21, 8F
謝啦
※ 編輯: p52189 來自: 140.138.150.181 (08/12 14:01)
推
08/12 16:08, , 9F
08/12 16:08, 9F
→
08/12 21:20, , 10F
08/12 21:20, 10F
→
08/12 21:22, , 11F
08/12 21:22, 11F
推
08/12 21:48, , 12F
08/12 21:48, 12F
→
08/12 21:49, , 13F
08/12 21:49, 13F
→
08/12 21:49, , 14F
08/12 21:49, 14F
→
08/12 21:50, , 15F
08/12 21:50, 15F
→
08/12 21:53, , 16F
08/12 21:53, 16F