摘要: OpenCV1.0中错误处理与C语言标准函数库里的错误处理相似,设置全局错误标识,通过检查全局错误标识,来判断程序是否出现错误,并进行错误报告.在OpenCV1.0中,如果调用函数出现错误并不直接返回错误代码,而是用CV_ERROR宏调用cvError函数报错,并设置错误状态,然后调用标准的或者用户自定义的错误处理器.每个程序的线程都有一个全局变量,它包含了错误状(一个整数值).这个状态可以被cvGetErrStatus函数查询到.//保存错误所在的文件和行typedef struct{ const char* file; int line;}CvStackReco... 阅读全文
posted @ 2012-07-19 13:24 一点心青 阅读(7428) 评论(0) 推荐(0) 编辑
摘要: C++中内存管理是需要程序员自己控制,系统不提供垃圾回收器,因此,我们在编程要确保动态分配的内存,必须释放,归还给系统.然而,可能由于程序员的疏忽,或者程序中出现一些异常现象,会导致程序无法到达释放内存的语句,从而造成内存泄露.如何才能避免这样错误,让内存资源管理简单化?解决思路:以对象管理资源,其包含两个关键想法如下.1.获得资源后立刻放进管理对象内.实际上"以对象管理资源"的观念常被称为"资源取得时机便是初始化时机".2.管理对象运用析构函数确保资源被释放.不论控制流如何离开区块,一旦对象被销毁(例如对象离开作用域)其析构函数自然会被自动调用,释放资 阅读全文
posted @ 2012-07-19 10:48 一点心青 阅读(560) 评论(0) 推荐(0) 编辑