编译器错误 C3848
具有类型“type”的表达式会丢失一些 const-volatile 限定符以调用“function”
具有指定 const-volatile 类型的变量只能调用具有相同或更大 const-volatile 限定定义的成员函数。
以下示例生成 C3848:
// C3848.cpp
void glbFunc1()
{
}
typedef void (* pFunc1)();
struct S3
{
operator pFunc1() // const
{
return &glbFunc1;
}
};
int main()
{
const S3 s3;
s3(); // C3848, uncomment const qualifier
}