だったら
std::string str;
char c = str[0];
も ok な仕様にしてもよかったような気がするが。