Why can't you use sprintf? It compiles and works fine in 7.0 SR4. (Try the example in programming guide.) You can also use string::Format and can even use an integer without a conversion function...
string str = "hello"; int i = 5; string str2 = str + i; out_str(str2);