引用:http://blog.csdn.net/kuweicai/article/details/72935283
1. 问题描述
在OpenCV中,有很多功能类似或者相同的函数,例如cvWaitKey()和waitKey()。新手在刚刚接触opencv时,很容易弄糊涂,到底有什么区别,为什么要有这些功能类似的函数。
2. 寻找答案
2.1 为什么有cvWaitKey(),还有waitKey()?
其实这个问题的答案可以在opencv的官方文档中找到答案。就拿opencv3.0 为例,可以到它的文档页:http://docs.opencv.org/3.0-beta/modules/refman.html,查询waiKey();如下图所示。可以发现,waitKey()其实是opencv为C++封装的API,而cvWaitKey()则是C的。另外有一点需要注意的是,在使用cv开头的函数时,不需要加命名空间cv::,相反在使用waitKey()时,则必须加,或者using namespace opencv;
2.2 cv开头的函数和没有cv的有什么区别?
通过文档,我们可以发现cvWaitKey()和waitkey()是没有区别的,但是并不意味着所有的都没有区别,比如createTrackbar()和cvCreateTrackbar(),虽然功能类似,但是其输入参数有所不同。所以功能都是类似的,只是在参数类型或者个数上稍有不同。