String reference

in a function
{
int i=0;
string s=(char)i;
}
Doesnt work But,

{
int i=0;
string s;
s=(char)i;
}

seems to work.
Why???
string s=(char)i;
This doesn't work because std::string doesn't have an implicit constructor that takes a char as argument.

s=(char)i;
This works because std::string has a operator= that takes a char as argument.
Topic archived. No new replies allowed.