error C2146: 語法錯誤 : 缺少“;”(在標識符“PVOID64”的前面)
來源:http://houjixin.blog.163.com/blog/static/356284102009112395049370/ DirectShow 2009-12-23 09:50:49 閱讀311 評論0 字號:大中小打開winnt.h文件,發現問題就是在winnt.h頭文件中無POINTER_64的定義造成的。搜索vc下的頭文件,發現在basetsd.h頭文件中有POINTER_64的定義,而在winnt.h頭文件中也包含了該頭文件。而在dxsdk9中也有basetsd.h頭文件,而該文件無POINTER_64的定義,因此編譯通不過。調整頭文件搜索順序后,編譯也不行,原來在VC6目錄里也有basetsd.h頭文件,而該文件無POINTER_64的定義。可能因為VC6的Include目錄在系統變量include里有,所以改變VS中的頭文件搜索順序不能解決問題。最后我吧winnt.h中的#include 改成"basetsd.h"就可以了。
?
error?C2146:?語法錯誤?:?缺少“;”(在標識符“filter”的前面)
CvFilter?filter?=?CV_GAUSSIAN_5x5;//出錯
把CVFILTER?直接改成int?就行了,opencv高級版本沒有這個類型了
?
error C2065: “CV_VALUE”: 未聲明的標識符
error C3861: “cvSnakeImage”: 找不到標識符
?
加入頭文件
?
#include <opencv2/legacy/legacy.hpp>
?
?