E
ek
This first example does not work (cannot be overloaded):
int& operator()(int a) { // (1)
return a;
}
int const& operator()(int a) { // (2)
return a;
}
but if I change (2) to (3):
int operator()(int a) const { // (3)
return a;
}
it works (overloading works). But why does (2) not work before I
change it to (3)?
int& operator()(int a) { // (1)
return a;
}
int const& operator()(int a) { // (2)
return a;
}
but if I change (2) to (3):
int operator()(int a) const { // (3)
return a;
}
it works (overloading works). But why does (2) not work before I
change it to (3)?