为什么指向函数指针的指针是8字节?

Mar*_*ról 2 c pointers function

我知道一个函数的指针是8字节,因为虚拟化,但为什么指向函数指针的指针是8字节?

typedef void(*fun())();
sizeof(fun*); // returns 8 byte
Run Code Online (Sandbox Code Playgroud)

Car*_*rum 14

如果你有一个64位系统,8位字节(听起来像你这样),可能所有指针的大小都是8字节.虚拟化与它没有任何关系.

  • @Gospo是 - 您可能正在考虑指向成员的指针; 一个C++概念,有时需要指针长度为void*的4倍,以支持虚函数和虚拟继承 (2认同)