ponteiro para const vs usual pointer (para funções)
Existe alguma diferença entre ponteiro para const e ponteiro usual para funções? Quando é adequado usar o qualificador const para funções autônomas?
Eu escrevi uma pequena amostra para ilustrar minha pergunta:
#include <iostream>
using namespace std;
int sum( int x, int y ) { return x + y; }
typedef int sum_func( int, int );
int main()
{
const sum_func* sum_func_cptr = ∑ // const function
sum_func* sum_func_ptr = ∑ // non-const function ?
// What is the difference between sum_func_cptr and sum_func_ptr
int x = sum_func_cptr( 2, 2 );
cout << x << endl;
int y = sum_func_ptr( 2, 2 );
cout << y << endl;
sum_func_cptr = 0;
sum_func_ptr = 0;
return 0;
}
g ++ não dá avisos. É por isso que eu pergunto.