Visual Studio (Intellisense) 无运算符 std::ostringstream <<

Visual Studio (Intellisense) no operator std::ostringstream <<

我正在使用 Visual Studio 16.5.3 和 visual micro 插件(版本 20.03.21.2/3)来编译一些 ESP32 电路板草图。我从 IDE、 中得到一个乏味的错误,即使代码编译并运行良好 。相关行是:

std::ostringstream ss;
ss << "LIGHT: ";

我收录了<iostream>, <string>, <sstream> and <ostream>

IDE 抱怨缺少 << 运算符,操作数类型为 std::stringstreamconst char[8]。实际消息是(对不起,意大利语,我想反正很清楚):

"C++ nessun operatore corrispondente agli operandi i tipi di operando sono: std::ostringstream << const char [8]"

这听起来像 "no operator << for the operands..."

Visual Studio (Intellisense) no operator std::ostringstream <<

首先,你应该将下面的代码放在function或main body下,然后导入几个头文件,如上所示。

像这样:

因此,如果您仍然遇到问题并且构建项目没有任何错误,我认为这是 Intellisense 的问题。你可以看到它在我身边效果很好。你可以试试这个:

建议:

1) 关闭 VS 实例,删除 .vs 隐藏文件夹,binobj 文件夹,然后重新打开您的项目。

2)Extensions-->Manage Extensions下禁用任何不相关的第三方扩展或使用devenv /safemode启动VS测试是否是其他扩展造成的

另外,如果问题仍然存在,请分享示例代码给我们,以便我们尽快解决问题。

期待任何反馈。