2

basic_ostream をパラメーターとして受け入れるメソッドがあります

write_sth_to( basic_ostream<unsigned char> &s );

std::cout (または basic_ostream< char >) を渡す方法はありますか? ありがとう。

4

1 に答える 1

0

もし私があなただったら、それを処理するラッパー関数を書きます。単純に abasic_ostream<char>を a にキャストできないからですbasic_ostream<unsigned char>。次のようなものがうまくいくかもしれません (注: テストされていないコード)

void wrapper(basic_ostream<char>& os)
{
    basic_stringstream<unsigned char> us;
    write_sth_to(us);
    transform(istream_iterator<unsigned char>(us),
              istream_iterator<unsigned char>(),
              ostream_iterator<char>(os, ""),
              char_to_unsigned_char
    );
}

ここで、関数char_to_unsigned_charは自分で作成したものです (2 つの型の間でどのように変換する予定かわかりません)。これはテストされていませんが、どこから始めればよいかがわかります。

于 2013-10-23T15:41:24.360 に答える