※ 引述《meltice.bbs@bbs.wretch.cc (三億兩千萬大散戶)》之銘言:
: ※ 引述《tinlans.bbs@whshs.cs.nccu.edu.tw (汀)》之銘言:
: > class member function pointer,
: > 這是 C++ 特有的 function pointer,
: > size 在大部分的 C++ 環境都是一般指標的兩倍,
: > 這個 overhead 也算是 C++ 的常識之一,
: > 不過很多教授不知道...
: > #include <iostream>
: > using namespace std;
: > class X {
: > void foo() { }
: > };
: > int main()
: > {
: > void (X::*ptr)(void);
^^^^^^^^^^^^^^^^^^^^^宣告一個指向物件X中的function member的pointer.
叫ptr
: > cout << sizeof(ptr) << endl;
: > return 0;
: > }
: 看不懂...
看不懂就應該學習啊...
不過這個真的很冷門就是了。
的確很多教授不知道:p 連我們學校的蛋頭都不知道。
PS.在VCL的source code中還滿常用的,不過他是寫pascal就是了。
我學到這個語法也是在寫某支程式時,想使用。(以前寫Delphi的時候用得很習慣XD)
突然發現在C++裡面不會寫Orz。 找滿久的,找到侯大師寄出來的信中有提到。
才有學到。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.104.34.78
※ 編輯: sekya 來自: 59.104.34.78 (06/02 16:20)