2006
06
08
23
46
[C++] the overhead of class member function pointe
PS: 在VC下,size一樣是4 bytes.但用gcc會是8 bytes.
以下摘錄自BBS programming版.
作者 tinlans.bbs@whshs.cs.nccu.edu.tw (汀), 看板 programming
標題 Re: 學C好還是C++?
時間 政大狂狷年少 (Thu Jun 2 11:56:08 2005)
路徑 maple!netnews.cs.nthu!news.cs.nthu!WHSHS
───────────────────────────────────────
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);
cout << sizeof(ptr) << endl;
return 0;
}