在C++中,我认为你可以做"字符串时间2"= stringstring?

Wol*_*'08 1 c++

我想弄清楚如何多次打印字符串.我收到了错误.我刚试过这条线:

cout<<"This is a string.  "*2;
Run Code Online (Sandbox Code Playgroud)

我期待输出:"这是一个字符串.这是一个字符串.",但我没有得到.这条线有什么问题吗?如果没有,这是整个计划:

#include <iostream>
using namespace std;


int main()
{
  cout<<"This is a string.  "*2;

  cin.get();
  return 0;
}
Run Code Online (Sandbox Code Playgroud)

我的编译器没有打开,因为我正在进行病毒扫描,所以我无法给出错误消息.但鉴于此网站的代码相对简单,我希望有人会通过简单的查看来了解我是否做错了什么.

感谢您的反馈意见.

Fre*_*Foo 7

如果切换到std::string,您可以自己定义此操作:

std::string operator*(std::string const &s, size_t n)
{
    std::string r;  // empty string
    r.reserve(n * s.size());
    for (size_t i=0; i<n; i++)
        r += s;
    return r;
}
Run Code Online (Sandbox Code Playgroud)

如果你试试

std::cout << (std::string("foo") * 3) << std::endl
Run Code Online (Sandbox Code Playgroud)

你会发现它打印foofoofoo.(但"foo" * 3仍然不允许.)