I have class that has assignment to string
operator.
class turbo
{
public:
operator string (void) {printf("assignment to string operator\n");return "bla2";}
};
Assignment operation works just fine:
turbo t;
string s;
s=t;
And I have "assignment to string operator"
in output.
Then I decided to make another assignment operator to turbo
class turbo
{
public:
operator string (void) {printf("assignment to string operator\n");return "bla";}
operator turbo (void) {printf("assignment to turbo operator\n");return *this;}
};
But code below does not calls turbo
assignment operator.
turbo t;
turbo tt ;
tt=t;
Why?
I know that I can overload =
operator, but I expect operator turbo
work also since string
one is operating.