07 2013 档案
摘要:Ipl转为CvMat 一般为这两种方法:1:/*cvGetMat*/CvMat matheader;CvMat * mat = cvGetMat(img, &matheader);2:/*cvConvert*/CvMat * mat = cvCreateMat(img->height, img->width, CV_64FC3);cvConvert(img, mat)不过经过测试,感觉cvGetMat并不好用,因为需要多一步初始化matheader的步骤。麻烦。所以推荐方法---------------------------------------------------
阅读全文
摘要:1、 如何快速地规范代码缩进格式 选中所需要规范的代码,按shift+F8 2、 如何在Release状态下进行调试 Project->Setting=>ProjectSetting对话框,选择Release状态。C/C++标签中的Category选General,Optimizations选Disable(Debug),Debut info选Program Database。在Link标签...
阅读全文
摘要:大家可能一直在用VC开发软件,但是对于这个编译器却未必很了解。原因是多方面的。大多数情况下,我们只停留在“使用”它,而不会想去“了解”它。因为它只是一个工具,我们宁可把更多的精力放在C++语言和软件设计上。我们习惯于这样一种“模式”:建立一个项目,然后写代码,然后编译,反反复复调试。但是,所谓:“公欲善其事,必先利其器”。如果我们精于VC开发环境,我们是不是能够做得更加游刃有余呢? Visu...
阅读全文
摘要:Q1:ExternalDependencies有什么作用?A1:(网友答复:)External Dependencies是说你没有把这个文件加入到这个工程中,但是需要这个文件的支持。当然有时是误操作。比如你从工程里面删除了abc.h但是在其中一个文件中用#include包含了这个文件,那么,abc.h就会进入External Dependencies中。.cpp文件比必须加到工程的Source Files中,否则编译link时候总是出错。而加进去就没有问题。 .h则可以不加,如果不加的话,会自动到External Dependencies中。好像所有的.h文件都不必加到Header Files
阅读全文
摘要:问题:这个问题居然也郁闷了我一段时间。 我们假设在EVC里建立了一个project, 里面有SubProject_1(以下简称SB1,嘿嘿), 编译生成一个EXE; SubProject_2(以下简称SB2)编译生成一个DLL;并且已经设置好SB1 "depend on" SB2, 在SB1运行的时候, 使用LoadLibrary函数动态加载SB2.DLL. 那么, 如果我在SB1和SB22里面各加断点若干, 然后按下F5(GO), 就会出现这样的警告框这时候如果程序停在SB1里的断点时,按CTRL+B看一看,就会发现SB1里面的断点仍然存在, 而SB2里面的断点已经被di
阅读全文
摘要:Demo调用Algorithm,Algorith调用svm。在Algorithm里面某个路径:"./",这个./代表什么呢?答案就是demo工程对应的文件夹。
阅读全文
摘要:一、__declspec(dllexport):将一个函数声名为导出函数,就是说这个函数要被其他程序调用,即作为DLL的一个对外函数接口。通常它和extern "C"合用,形式如下:extern "C"{__declspec(dllexport) RETURN_TYPE FUNCTION(){}}这是由于在制作DLL导出函数时由于C++存在函数重载,因此__declspec(dllexport) FUNCTION(int,int)在DLL会被decorate,例如被decorate成为 function_int_int,而且不同的编译器decorate的
阅读全文
摘要:Q1:extern “C” 是做什么用的?A1:一种情况是多个文件中,变量声明或者函数声明,需要extern “C”,这种情况在这里不做讨论。 在dll工程中,被extern "C"修饰的变量和函数是按照C语言方式编译和连接的,即把C++的函数用C这个方言表述出来,已达到C能看懂的目的。Q2:C语言调用C++的dll,应该注意什么?A2: 如extern“C”里面说的那样,如果C++编写的函数放在dll里面,不被extern“C”修饰的话,被C调用时,则C不认识,所以在C++工程里面声明时,要加extern“C”修饰,就像:extern "C" __de
阅读全文
摘要:1.概论 先来阐述一下DLL(Dynamic Linkable Library)的概念,你可以简单的把DLL看成一种仓库,它提供给你一些可以直接拿来用的变量、函数或类。在仓库的发展史上经历了“无库-静态链接库-动态链接库”的时代。 静态链接库与动态链接库都是共享代码的方式,如果采用静态链接库,则无论你愿不愿意,lib中的指令都被直接包含在最终生成的EXE文件中了。但是若使用DLL,该DLL不必被包含在最终EXE文件中,EXE文件执行时可以“动态”地引用和卸载这个与EXE独立的DLL文件。静态链接库和动态链接库的另外一个区别在于静态链接库中不能再包含其他的动态链接库或者静态库,而在动态链接库..
阅读全文

浙公网安备 33010602011771号