Этот фрагмент кода компилирует файл в VC6, но в VS 2008 выдает ошибку. Кто-нибудь может сказать мне, почему? Я предполагаю, что это потому, что вы больше не можете сравнивать указатель с NULL (который является typedef для 0). Если это так, как мне сделать это сравнение в VC9?
for ( std::vector<aCattrBase*>::iterator iT = attrLst.begin(); iT < attrLst.end(); iT++)
{
if ( (iT != NULL) && (*iT != NULL) ) //Error: C2678
{
//code
}
}
ошибка C2678: двоичный файл '!=': не найден оператор, который принимает левый операнд типа 'std::_Vector_iterator‹_Ty,_Alloc>' (или нет приемлемого преобразования)