You can only overload operator for which at least one of the arguments is a CLASS or reference to it. You're trying to overload a operator that receives a double and a pointer..
Code:
class A{};
A* operator+(const A* a,char){}
int main(){
A a;
&a+'h';
return 0;
}
and the error
Code:
$ make
g++ -Wall -c ./main.cpp -o obj/./main.o
./main.cpp:24: error: `A* operator+(const A*, char)' must have an argument of cl
ass or enumerated type
./main.cpp: In function `int main()':
./main.cpp:27: warning: statement has no effect
./main.cpp:29:2: warning: no newline at end of file
make: *** [obj/./main.o] Error 1