この本のサンプルコードを試して、元の画像に輪郭を描きました。ただし、次のコードは、Mingw4.4を使用したQtでは正常にコンパイルされません。
// Eliminate too short or too long contours
int cmin= 100; // minimum contour length
int cmax= 1000; // maximum contour length
std::vector<std::vector<cv::Point> >::
const_iterator itc= contours.begin();
while (itc!=contours.end()) {
if (itc->size() < cmin || itc->size() > cmax)
itc= contours.erase(itc);
else
++itc;
}
警告:符号付き整数式と符号なし整数式の比較警告:符号付き整数式と符号なし整数式の比較エラー:'std :: vector、std :: allocator >>、std :: allocator、std ::allocator>>の呼び出しに一致する関数がありません>> :: Erase(__ gnu_cxx :: __ normal_iterator、std :: allocator >> *、std :: vector、std :: allocator >>、std :: allocator、std :: allocator >> >> >>&) '
itcにはメソッドsize()がないということです。しかし、本は本当にそのように書いています。私は何か見落としてますか?