缺少 openCV 3.0.0 cv::vector

openCV 3.0.0 cv::vector missing

我正在从 opencv 2.4.11 升级到 3.0.0 我在我的代码中使用了 cv::vector <br> 但现在我得到了错误 vector in 不是 'cv'

的成员

我将开始使用 std::vector 而不是 <br> 但是我找不到任何地方它被删除或只是移动到另一个头文件?

在OpenCV 3.0之前的版本中,在core.hpp开头可以看到OpenCV在内部使用std::vector

#ifndef __OPENCV_CORE_HPP__
#define __OPENCV_CORE_HPP__

...
#include <vector>
...

/*! \namespace cv
    Namespace where all the C++ OpenCV functionality resides
*/
namespace cv {
...
using std::vector;
...

因此您也可以通过 cv 命名空间访问 std::vector,例如:

cv::vector

事实上,OpenCV 在内部引用 std::vector 就像 vector

在 OpenCV 3.0 中 #using std::vector 不存在,OpenCV 内部总是指 std::vector.

您将能够使用 cv::vector 将此添加到您的代码中:

namespace cv
{
    using std::vector;
}