提交 207218e9 编写于 作者: H hailong-wang 提交者: GitHub

Fix the bug of Mat_<>::opeartor []

`template<typename _Tp> inline const _Tp* Mat_<_Tp>::operator [](int y) const` does not support 3d matrix since it checks rows.

This operator[] shall check size.p[0] instead.
上级 502aa1f0
......@@ -1634,14 +1634,14 @@ Mat_<_Tp> Mat_<_Tp>::operator()(const std::vector<Range>& ranges) const
template<typename _Tp> inline
_Tp* Mat_<_Tp>::operator [](int y)
{
CV_DbgAssert( 0 <= y && y < rows );
CV_DbgAssert( 0 <= y && y < size.p[0] );
return (_Tp*)(data + y*step.p[0]);
}
template<typename _Tp> inline
const _Tp* Mat_<_Tp>::operator [](int y) const
{
CV_DbgAssert( 0 <= y && y < rows );
CV_DbgAssert( 0 <= y && y < size.p[0] );
return (const _Tp*)(data + y*step.p[0]);
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册