【问题标题】:Change variable text [duplicate]更改变量文本[重复]
【发布时间】:2012-10-17 20:50:58
【问题描述】:

可能重复:
In C++, how do you clear a stringstream variable?

我想在循环中显示的字符串有问题。

我在循环中这样设置:

//while {
 std::stringstream s;
 s << "Hello";

  font_surface = TTF_RenderText_Solid(font,s.str().c_str(),font_color);
  apply_surface(x,y,font_surface,screen);   

  s << "GoodBye";
  if(font_surface = TTF_RenderText_Solid(font,s.str().c_str(),font_color);
  apply_surface(bx,by,font_surface,screen);


//end loop }

我遇到的问题是输出首先显示Hello,然后在另一个位置显示HelloGoodBye,我需要在添加Goodbye 之前清除内容,所以我只能在屏幕上的第二个位置看到它。

那么在将Hello 的信息更改为Goodbye 之前如何清除它?

【问题讨论】:

  • 似乎使用std::string 会是更好的选择。 std::string s = "Hello"; /*call functions*/ s = "Goodbye"; /*call functions*/
  • 有人建议我使用当前的方法,因为我会将变量添加到我的字符串中以用于保存整数的输出。
  • 啊,我明白了。那么你可以使用s.str("");。看到这个:stackoverflow.com/questions/20731/…
  • 很有魅力,谢谢!如果你想回答问题,我会为代表打勾:)
  • 作为一个骗子可能会更好,因为这个问题确实可以归结为另一个人的标题。

标签: c++ sdl


【解决方案1】:

如果必须使用字符串流,请调用

s.str("");

清除它

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-05-15
    • 2023-04-07
    • 2014-11-29
    • 2017-09-24
    • 1970-01-01
    • 2011-07-08
    • 2013-04-01
    相关资源
    最近更新 更多