STL的map和opencv冲突,报以下错误,如何解决啊?谢谢

yinhu417417 2009-02-28 05:19:01
C:\Program Files\OpenCV\cxcore\include\cxcore.h(1623) : error C2955: 'map' : use of class template requires template argument list
C:\Program Files\VC98\INCLUDE\map(140) : see declaration of 'map'

如何解决啊,小弟急啊,谢谢!
...全文
752 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
ljpdb 2012-10-25
  • 打赏
  • 举报
回复
把包含opencv函数的头文件放在其他头文件的前面,这样可以解决。我也遇到这个问题,我就是这么解决的。
wangke0072003 2010-11-02
  • 打赏
  • 举报
回复
楼主,我也碰到这些问题了,怎么解决啊?
yinhu417417 2009-03-02
  • 打赏
  • 举报
回复
还是不行啊,郁闷死了。QQ263539974,改过的加下,帮帮我。感激!
shhpj11 2009-03-02
  • 打赏
  • 举报
回复
up
hemdacker 2009-03-02
  • 打赏
  • 举报
回复
这个OpenCV确实比较烦人,以前我也改过。
scofieldzhu 2009-03-02
  • 打赏
  • 举报
回复
[Quote=引用楼主 yinhu417417 的帖子:]
C:\Program Files\OpenCV\cxcore\include\cxcore.h(1623) : error C2955: 'map' : use of class template requires template argument list
        C:\Program Files\VC98\INCLUDE\map(140) : see declaration of 'map'

如何解决啊,小弟急啊,谢谢!
[/Quote]
这样写试试:
#pragma warning (disable:4786)
#include "StereoMatcher.h"
#include <vector>
#include <iostream>
#include <time.h>
#include <algorithm>
#include "math.h"
extern "C"
{
#include "highgui.h"
#include "cv.h"
}

#include "Convert.h"
#include <map>
using std::map;
yinhu417417 2009-03-02
  • 打赏
  • 举报
回复
再顶
ahao 2009-03-01
  • 打赏
  • 举报
回复
不会没用的,先仔细想想再说
yinhu417417 2009-03-01
  • 打赏
  • 举报
回复
还是没用啊。帮忙解决下啊,感激。或者加我QQ,我把程序发你。
ahao 2009-03-01
  • 打赏
  • 举报
回复
你别用了 using namespace std;
特别是在头文件里,千万别用
这个是把整个std名字空间里的东西全部引入全局

把这个去了再编译,
using namespace std; 是最不推荐使用的,一般就放在cpp文件开头里,或者函数里局部使用,
其他的可以用比如 using std::string; 这样的更安全
yinhu417417 2009-03-01
  • 打赏
  • 举报
回复
#pragma warning (disable:4786)
#include "StereoMatcher.h"
#include <vector>
#include <iostream>
#include <time.h>
#include <algorithm>
#include "math.h"
#include <map>
extern "C"
{
#include "highgui.h"
#include "cv.h"
}

#include "Convert.h"
using namespace std;
我是在opencv的h文件包含后面用 using namespace std;,如何解决map冲突问题啊,谢谢追加100
菜牛 2009-03-01
  • 打赏
  • 举报
回复
命名空间就是用来解决这种命名冲突的问题的。
ahao 2009-03-01
  • 打赏
  • 举报
回复
是名字空间的问题,你不要在opencv的h文件包含前面用 using namespace std;
这样就乱了
yinhu417417 2009-03-01
  • 打赏
  • 举报
回复
#include <map>
using namespace std;

我加了啊,查了网上好多这方面的,但都解决不了啊。
谁来帮帮小弟啊,感激!

19,464

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧