Merge pull request #9507 from delftrobotics-forks:restrict-initializer-list-constructor

This commit is contained in:
Alexander Alekhin 2017-08-29 18:09:11 +00:00
commit 91ef0b9537
2 changed files with 7 additions and 2 deletions

View File

@ -53,6 +53,10 @@
#include "opencv2/core/bufferpool.hpp"
#ifdef CV_CXX11
#include <type_traits>
#endif
namespace cv
{
@ -988,7 +992,8 @@ public:
#ifdef CV_CXX11
/** @overload
*/
template<typename _Tp> explicit Mat(const std::initializer_list<_Tp> list);
template<typename _Tp, typename = typename std::enable_if<std::is_arithmetic<_Tp>::value>::type>
explicit Mat(const std::initializer_list<_Tp> list);
#endif
#ifdef CV_CXX_STD_ARRAY

View File

@ -575,7 +575,7 @@ Mat::Mat(const std::vector<_Tp>& vec, bool copyData)
}
#ifdef CV_CXX11
template<typename _Tp> inline
template<typename _Tp, typename> inline
Mat::Mat(const std::initializer_list<_Tp> list)
: flags(MAGIC_VAL | DataType<_Tp>::type | CV_MAT_CONT_FLAG), dims(2), rows((int)list.size()),
cols(1), data(0), datastart(0), dataend(0), datalimit(0), allocator(0), u(0), size(&rows), step(0)