2015-06-24 73 views
1

我在B. Stroustrup的書中偶然發現了奇怪的(對我來說)構造。代碼是複雜的語法(類)

int (S::*) pmf() {&S::f}; 

我是C++中的中間人,但我甚至不知道,我應該在Google和SO中尋找什麼。我不明白上述建設,你能幫我或指點我一個好的來源嗎?

+2

應該是'int(S :: * pmf)(){&S :: f}'它表示「'pmf'是指向'S'的成員函數的指針,它不接受任何參數並返回'int',初始化爲成員函數'S :: f'的地址。 – 0x499602D2

+0

也許這會使一些光明:http://stackoverflow.com/questions/4984600/when-do-i-use-a-dot-arrow-or -double-colon-to-refer-to-members-of-a-in-c – Snappawapa

+0

查找[成員函數指針](http://stackoverflow.com/search?q=%5Bc%2B%2B% 5Dmember + function + pointer + what + is) –

回答

0

pmf()是成員函數S::f的成員函數指針,它返回int並且不接受任何參數。