得到错误'没有操作员"<<&#;匹配这些操作数'当试图将std :: string传递给ostream时

时间:2017-10-16 12:07:27

标签: c++ visual-studio-2015 stdstring ostream

我想学习c ++,所以我关注c ++编程课程。 这大部分都是非常简单的东西,但现在我已经跑了几次这种奇怪的情况,我无法使用'<<<<<<&#将std :: string传递给ostream的操作数,尽管大部分时间我都能够这样做。

作为IDE,我使用的是vs2015,我有以下代码。

#include "stdafx.h"
#include <iostream>

int main() 
{
    std::string str = "Foo";
    std::cout << str << std::endl;
}

&#39;&lt;&lt;&lt;&# std :: cout和str之间的操作数得到了红线,我收到错误消息:&#34;没有操作符&#34;&lt;&lt;&#34;匹配这些操作数。操作数类型是:std :: ostream&lt;&lt;的std :: string&#34;

这种情况非常随机且极少发生,因此我无法找出案件之间的任何类型的相关性。我注意到的一件事是,包括项目<sstream>将解决问题,但我不认为应该如何。

有什么建议吗?

0 个答案:

没有答案