假设以下代码:
#include <iostream> #include <vector> #include <string> int main() { std::vector<std::string> lines; lines.push_back("line"); for (const auto& s : lines) { std::cout << s; } }
在for循环的行中,我收到以下警告:
C26493 Don’t use C-style casts that would perform a static_cast downcast,const_cast,or reinterpret_cast.
有人可以解释这是从哪里来的吗?我使用Visual Studio 2017 Community Edition版本15.2.
解决方法
如在
this bug report中所见,当插入basic_iostream时,似乎只发生了std :: string类型.这个bug已经解决但尚未发布,所以现在你只需要等待.