Erro do compilador C3848
expressão com o tipo 'type' perderia alguns qualificadores const-voláteis para chamar 'function'
Uma variável com um tipo const-volátil especificado só pode chamar funções membro definidas com as mesmas ou maiores qualificações const-voláteis.
A amostra a seguir gera o erro 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
}