※ 引述《tinlans.bbs@whshs.cs.nccu.edu.tw (汀)》之銘言:
> ※ 引述《txt.bbs@bbs.ntu.edu.tw (筆記本)》之銘言:
> > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> > 快 教大家一下 怎麼開不是 32 bits 的 pointer
> class member function pointer,
> 這是 C++ 特有的 function pointer,
> size 在大部分的 C++ 環境都是一般指標的兩倍,
呼. 真的很神奇
不過不能瞭解的是為什麼???
member function pointer的目的是為了指向member function
有必要用到兩倍的空間???
> 這個 overhead 也算是 C++ 的常識之一,
> 不過很多教授不知道...
> #include <iostream>
> using namespace std;
> class X {
> void foo() { }
> };
> int main()
> {
> void (X::*ptr)(void);
> cout << sizeof(ptr) << endl;
> return 0;
> }
--
※ Origin: 交大資工鳳凰城資訊站 <bbs.csie.nctu.edu.tw>
◆ From: adsl-61-66-176-243.BC.sparqnet.net