Написать аналог метода _Compat шаблоного класса Vector_const_iterator - C (СИ)
Формулировка задачи:
Подскажите пожалуйста, как можно написать аналог метода _Compat шаблоного класса Vector_const_iterator
Вот код метода _Compat(взят с заголовочного файла vector)
Мне хотелось-это реализовать вне класса и вместо _DEBUG_ERROR использовать printf, а от _SCL_SECURE_INVALID_ARGUMENT вообще избавиться, чтобы не появлялось сообщение в с окном ("vector iterators incompatible-несовместимые итераторы вектора"). Или есть ли какие-нибудь идеи обработать данное исключение стандартными средставами не использую блок try catch?
И еще с чем в данном выражении идет сравнение this->_Mycont != _Right._Mycont? Самого поле _Mycont этого объекта(this) c этим же полем объекта(_Right при отладке)????
#define 1 _HAS_ITERATOR_DEBUGGING
#if _HAS_ITERATOR_DEBUGGING
void _Compat(const _Myt& _Right) const
{ // test for compatible iterator pair
if (this->_Mycont == 0 || this->_Mycont != _Right._Mycont)
{
_DEBUG_ERROR("vector iterators incompatible");
_SCL_SECURE_INVALID_ARGUMENT;
}
}
#endif /* _HAS_ITERATOR_DEBUGGING */this->_Mycont != _Right._Mycont
Решение задачи: «Написать аналог метода _Compat шаблоного класса Vector_const_iterator»
textual
Листинг программы
void CompatIter(const _Myt& _Left, const _Myt& _Right);