类型:
std::remove_pointer<int(*)(int)>::type
是 int(int)
。这段代码:
#include <iostream>
#include <type_traits>
using namespace std;
int main()
{
cout << boolalpha;
cout << is_same<remove_pointer<int(*)(int)>, int(int)>::value;
cout << endl;
}
打印“真”。但是,“函数成员”的(书面)类型是什么?
#include <iostream>
#include <type_trais>
using namespace std;
struct A {};
int main()
{
cout << boolalpha;
cout << is_same<remove_pointer<int(A::*)(int)>, int(int)>::value;
cout << endl;
}
返回 false
。而像 int A::(int)
这样的东西会抛出编译错误(无效类型)。
最佳答案
关于c++ - 指向函数成员的已删除指针的类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14524556/