看板 C_and_CPP 關於我們 聯絡資訊
class b_t{ public: int func_b (int b){return b;} }; class a_t{ public: typedef int (b_t::*b_func_t)(int); b_func_t a_func; }; 我有疑惑的是這一行 typedef int (b_t::*b_func_t)(int); 請問這意思是define一個function pointer, 它指到b_t的member funciton嗎? 謝謝!! -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 59.115.115.127 ※ 文章網址: http://www.ptt.cc/bbs/C_and_CPP/M.1409497678.A.0CA.html
jackace: typedef 是define一個type 下一行才是用這個type define 08/31 23:36
jackace: 一個pointer to member 08/31 23:36
LPH66: 不過原 PO 的理解也滿接近了就是 09/01 07:56
LPH66: 要看 typedef 的方法就是先不看 typedef 去認那是什麼宣告 09/01 07:57
LPH66: 如果得到「某名字是某型態的變數」那這個 typedef 就是 09/01 07:57
LPH66: 「定義這名字代表這個型態」的宣告 09/01 07:58
derek5566: 謝謝樓上們!! 09/01 10:06