這裏是下面的代碼,MISRA C++ 2008陌生警告
std::stringstream os;
for (size_t i = 0U; i < len; i++) {
os << static_cast<uint32_t>(src[i]);
}
警告是:「諮詢規則14-8-2,可行集合包含兩個功能 和模板:性病:: basic_ostream ::操作者< <「
用於以下的代碼行
os << static_cast<uint32_t>(src[i]);
請建議如何解決這個問題,我是新來的C++,並確定相同。
消息中沒有更多信息?請修改您的問題以包含完整的信息。 –
@Joachim完整的消息*包含在第一個代碼片段的下方。這是因爲['basic_ostream'](http://en.cppreference.com/w/cpp/io/basic_ostream)定義了一個成員'operator <<',這是一組愚蠢的Misra規則,非模板重載以及一組免費函數模板版本。正如警告所述,重載解析的候選集合包含這兩個函數模板和非模板。 – Praetorian
...這是隻有很多原因不使用米斯拉C++編碼標準。它有一套相當可恥的規則。 –