错误C2440:'type cast':无法从'unsigned int(__thiscall IEngineVGui :: *)(unsigned int)'转换为'void *'

时间:2016-07-29 06:00:40

标签: c++

所以我正在尝试将使用GCC编译的朋友代码移植到Visual C ++。

Picture of what i'm doing and error.

1 个答案:

答案 0 :(得分:0)

你的问题在于:

hide()

(void*) &IEngineVGui::GetPanel 的类型为&IEngineVGui::GetPanel,即member function pointer

您正在尝试将其转换为"常规"指针类型which is sadly not possible,因为它们的处理方式完全不同。所以MSVC通过给你一个错误正确地行动。如果您的代码在GCC上编译得很好,很可能是由于该特定版本中的错误和/或非标准扩展。