使用vector没有头文件为啥不报错?

include <opencv2/opencv.hpp>

include <iostream>

include <cassert>

include <cmath>

include <fstream>

using namespace std;
using namespace cv;

C++程序,使用了opencv,上面是头文件和命名空间,程序里有vector,为啥不报错,能正常编译运行?

阅读 7.5k
5 个回答

因为OpenCV有cv::vector…

opencv里是应该有类似这样的代码

include <vector>

namespace cv {
using std::vector;
}

你用的是cv::vector,而不是std::vector

打开opencvsourcesmodulescoreincludeopencv2core里的core.hpp, 俨然一个#include <vector> !很显然2l没有include<core.hpp>

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题