1. ホーム
  2. C++

エラー/ワーニングの種類まとめ - 符号付き整数式と符号なし整数式の比較

2022-02-25 11:52:26
<パス

エラーの種類

 vector<int> histogram = Histogram(img);
 int total = 0;
 for (int i = 0; i ! = histogram.size(); ++i)
 {
     total += histogram[i];
 }


分析

iは符号付き整数,histogram.size()は符号なし整数であるため,このような警告が発生します.

解決策

1.

for (unsigned int i = 0; i ! = histogram.size(); ++i)


2.

for (std::size_t i = 0; i ! = histogram.size(); i++)


3.

for (vector::size_type i = 0; i ! = histogram.size(); ++i)