如何在 C++ 中返回包含变量和字符的字符串?

Fla*_*n3l 0 c++ string cout return function

我有一个字符串函数,我想输出以下 cout 行。

 string print_ticket(void){
        if(sold_status == true){
            cout<<seat_number<<" "<<seat_number<<"sold";
        }
        else{
            cout<<seat_number<<" "<<seat_number<<"available";
        }
    }
Run Code Online (Sandbox Code Playgroud)

问题是该函数必须返回一个字符串,并且我不确定在这种情况下将这些 cout 语句转换为字符串的最佳方法。

感谢您的帮助。

Der*_*nes 6

使用ostringstream,当包含以下内容时可用<sstream>

string print_ticket(void){
    std::ostringstream sout;
    if (sold_status) {
        sout << seat_number << " " << seat_number << "sold";
    }
    else {
        sout << seat_number << " " << seat_number << "available";
    }
    return sout.str();
}
Run Code Online (Sandbox Code Playgroud)