這裏是我的示例代碼..字符串迭代器不兼容
const std::string strSchemeEnd("://");
StringConstIteratorType itScheme = std::search(p_strUrl.begin(), p_strUrl.end(), strSchemeEnd.begin(), strSchemeEnd.end());
StringConstIteratorType l_itTempConst = p_strUrl.begin();
m_strScheme.reserve(std::distance(l_itTempConst, itScheme));
std::copy(l_itTempConst , itScheme, std::back_inserter(m_strScheme));
boost::algorithm::to_lower(m_strScheme);
l_itTempConst = strSchemeEnd.end();
if (itScheme == l_itTempConst)
return;
當我嘗試運行程序時,我發現了以下錯誤
#if _ITERATOR_DEBUG_LEVEL == 2
void _Compat(const _Myiter& _Right) const
{ // test for compatible iterator pair
if (this->_Getcont() == 0
|| this->_Getcont() != _Right._Getcont())
{ // report error
_DEBUG_ERROR("string iterators incompatible");
_SCL_SECURE_INVALID_ARGUMENT;
}
}
我面對這個問題很多。有時候解決方法是有效的,有時卻不行。我想知道這個「字符串迭代器不兼容」錯誤的原因。有人能幫助我嗎?