C/C++
文章平均质量分 60
buaalei
这个作者很懒,什么都没留下…
展开
-
常见图像特征提取OpenCV用法总结
cvSobel只用于单通道图像变换,如对彩色图像进行cvSobel处理,可分别对每一通道图像进行cvSobel,再转为彩色图像。OnEdgedetSobel(){ IplImage *img = cvCreateImage( cvGetSize(workImg), IPL_DEPTH_16S, 1);if(workImg->nChannels==3)OnColorToGray(原创 2023-03-09 14:10:38 · 481 阅读 · 1 评论 -
C++重载箭头操作符的理解
转载地址:http://www.cppblog.com/custa/archive/2010/08/15/123491.html今天看《C++ Primer》的成员访问操作符。看重载箭头操作符部分,刚开始有点迷茫,看了两遍总算有点理解,把心得写在这,与各位分享,如果有错误欢迎指正。箭头操作符(->)的通常用法是,使用一个类对象的指针来调用该指针所指对象的成员。左操作数为对象指针,右操作转载 2011-11-01 15:30:21 · 2820 阅读 · 0 评论 -
C++操作符重载
重载操作符是具有特殊名称的函数:保留字operator后接所需定义的操作符符号。重载操作符必须具有至少一个类类型或枚举类型的操作数,这条规则强制重载操作符不能重新定义用于内置类型对象操作符的含义,所以如int operator+(int ,int )是不合法的。大多数重载操作符可以定义为普通非成员函数或类的成员函数,作为成员函数的操作符有一个隐含的this形参,限定为第一个操作数。一般翻译 2011-12-06 15:49:10 · 2400 阅读 · 0 评论 -
C++ 构造函数详解
1.有时候需要构造函数初始化列表有些成员必须在构造函数初始化列表中初始化,对于这样的成员,在构造函数函数体没法对它们进行赋值,包括:任何const成员,引用类型成员以及没有默认构造函数的类类型成员。如下count必须在初始化列表中初始化,而不能在构造函数函数体中进行赋值,而name可以在初始化列表中初始化,也可以在函数体中初始化:class Item{public:Item(con原创 2011-10-26 16:59:40 · 814 阅读 · 0 评论 -
C++动态绑定及继承
在C++中,通过基类的引用(或指针)调用虚函数,发生动态绑定。引用(或指针)既可以指向基类对象,也可以指向派生类对象。用引用(或指针)调用的虚函数在运行时确定,被调用的函数是引用(或指针)所指对象的实际类型所定义的。除了构造函数,任意非static成员函数都可以是虚函数。保留字virtual只能在类内部的成员函数声明中出现,不能用在类定义体外部出现的函数定义上。派生类中虚函数的声明必须与基翻译 2011-11-07 10:02:08 · 1335 阅读 · 2 评论 -
windows下开发ffmpeg编译过程
windows下编译ffmpeg是个费尽的事情,本文主要参考以下文章http://blog.csdn.net/jszj/article/details/4028716,需要下载的软件原文都给出了链接,最后结合自己的开发过程总结。1.下载ffmpeg源代码下载网址:svn://svn.mplayerhq.hu/ffmpeg/trunk首先需要安装svn客户端,我用的是Tortoise原创 2012-02-27 22:56:34 · 3088 阅读 · 1 评论 -
VS2010下编译安装DarwinStreamingServer5.5.5
源码下载链接:http://dss.macosforge.org/源码版本: 6.0.3版本电脑环境:visual studio2010,window 7 x64系统。用VS2010打开WinNTSupport文件夹下的.dsw工程,全部转换vs2008 sp1的sln。 使用vs2010编译的遇到一些问题和解决方法:(1) 提示:winsock2某些函数原创 2013-10-24 17:14:48 · 2762 阅读 · 1 评论 -
LibUSB-Win32 在Windows7上使用vs2010编译过程
LibUSB-Win32是一个用于Windows操作系统(Win98SE、WinME、Win2k和WinXP、Vista、Win7等)上的通用USB设备驱动程序,该驱动程序允许使用者在不写任何一行核心驱动程序代码的情况下,可以访问Windows系统上的任意一个USB设备,本文描述如何利用VS2010在win7上编译libUSB-Win32。原创 2015-05-14 16:44:52 · 13943 阅读 · 6 评论 -
VisualStudio 路径和项目属性配置
VC++项目的路径配置,属性配置介绍。原创 2015-06-03 11:43:36 · 24115 阅读 · 0 评论 -
Protocol Buffer技术详解(语言规范)
[转]:http://www.cnblogs.com/stephen-liu74/archive/2013/01/02/2841485.html内容主体主要源自于Protocol Buffer的官方文档,而代码示例则抽取于一个公司内部项目的Demo。这样做不仅可以保持Google文档的良好风格和系统性,同时再结合一些比较实用和通用的用例,这样就更加便于公司内部的培训,以及和广大网友的技术交流。转载 2015-07-15 14:10:19 · 1264 阅读 · 0 评论 -
硬链接和符号链接简介
硬链接:由于linux下的文件是通过索引节点(Inode)来识别文件,系统并不为硬连接重新分配inode。每添加一个硬链接,文件的链接数就加1,但是硬连接本身还是有的原文件的inode值。如下:[root@localhost tmp]# vi test[root@localhost tmp]# ln test test-hd[root@localhost tmp]# ls -il原创 2012-02-14 09:51:31 · 2652 阅读 · 0 评论 -
CreateInstance(__uuidof(Connection)) 不支持此接口解决方法
CreateInstance(__uuidof(Connection)) 不支持此接口解决方法原创 2014-05-17 11:44:53 · 6705 阅读 · 1 评论 -
linux下添加PATH的方法
http://kekuk.blog.51cto.com/326101/7433521.临时添加路径到目前的PATH #PATH=$PATH:/etc/apache/bin使用这种方法,只对当前会话有效,也就是说每当登出或注销系统以后,PATH 设置就会失效2.添加全局变量在/etc/profile文件中 #vi /etc/profile在转载 2012-02-15 11:28:27 · 2553 阅读 · 0 评论 -
mysql-connector-c++ +vs2013x64 编译
使用MySQL提供的mysql-connector-c++库时,总是有_MSC_VER问题,只好自己编译(系统环境win7x64,编译环境vs2013+x64)。参考如下文章:http://blog.csdn.net/yunfei_1973/article/details/9230151http://blog.csdn.net/fanwenbo/article/details/3767原创 2016-03-03 12:03:44 · 2794 阅读 · 0 评论 -
如何使用ssd训练自己的数据(windows下)
如何使用ssd训练自己的数据(windows下)原创 2017-02-14 11:12:16 · 8297 阅读 · 3 评论 -
static 类成员
static 成员类似一个全局对象的作用,但是定义在类中,遵循正常的公有/私有访问规则。可以通过作用域操作符从类直接调用static成员;通过对象,引用或者指向该类类型对象的指针间接调用。static 成员函数当我们在类的外部定义static成员时,无需重复指定static保留字,该保留字只出现在类定义体内部的声明中。static成员是类的组成部分,但是不是任何对象的组翻译 2011-12-01 22:35:45 · 1132 阅读 · 0 评论 -
dll中的.def文件写法
模块定义(.def)文件为链接器提供有关被链接程序的导出、属性及其他方面的信息。生成DLL时,.def 文件最有用。由于存在可代替模块定义语句使用的链接器选项,通常不需要.def文件。也可以将__declspec(dllexport)用作指定导出函数的手段。 在链接器阶段可以翻译 2011-04-13 18:09:00 · 6046 阅读 · 0 评论 -
C++函数参数指南
1.非引用形参非引用形参表示对对应实参的局部副本,对这类形参的修改仅仅改变了局部副本的值,一旦函数执行完成,这些局部变量的值也就没有了。1.1 指针形参该类形参的任何改变也仅仅作用于局部副本,如果函数将新指针值赋给形参,主调函数使用的实参指针的值没有改变。1.2c原创 2011-10-07 21:18:36 · 2489 阅读 · 0 评论 -
如何让程序随开机自动启动
if (/*需要开机启动*/) { //写入注册表,开机自启动 HKEY hKey; //找到系统的启动项 LPCTSTR lpRun = "Software//Microsoft//Windows//CurrentVersion//Run"; //打开启动项Key long lRet = RegOpenKeyEx(HKEY_LOCAL_MACHINE, lpRun, 0,原创 2010-01-19 09:59:00 · 1970 阅读 · 0 评论 -
GetCurrentDirectory 和 GetModuleFileName区别
DWORD GetCurrentDirectory( DWORD <a class="synParam" onclick="function onclick(){showTip(this)}">nBufferLength, LPTSTR <a class="synParam" onclick="function onclick(){showTip(this)}">lpB原创 2010-01-19 09:21:00 · 4965 阅读 · 2 评论 -
将位图的背景色置为透明
void CTransparentBmp::OnPaint() { CPaintDC dc(this); // device context for painting CDC memDC; memDC.CreateCompatibleDC(&dc); CDC pMaskDC; pMaskDC.CreateCompatibleDC(&dc); CBitmap *oldBit原创 2010-01-20 14:07:00 · 1714 阅读 · 0 评论 -
隐藏程序图标到任务栏
BOOL TrayMessage(HWND hWnd, DWORD dwMessage, HICON hIcon, PSTR pszTip){ BOOL bReturn; NOTIFYICONDATA NofityData; NofityData.cbSize = sizeof(NOTIFYICONDATA); NofityData.hWnd = hWnd; NofityData.uID = ID原创 2010-01-20 09:17:00 · 992 阅读 · 0 评论 -
VC 下Microsoft Speech SDK开发小结
1.首先开发得需要Microsoft Speech SDK的支持,以下是下载地址 http://msdn.microsoft.com/code/sample.asp?url=/msdn-files/027/000/781/msdncompositedoc.xml Speech SDK 5.1 (68 MB) http://download.microsoft转载 2010-03-12 09:04:00 · 8798 阅读 · 0 评论 -
用VC++实现SNMP协议的方法
<br />source: http://tech.ddvip.com/2008-11/122656939292352.html<br /> <br />首先来阐述几个重要的概念:<br /> 1、community (共同体名):如果翻译过来可能会显得难于理解,其实你完全可以把它理解为一个带有权限的登陆账户,这是你访问网络设备的重要凭据,比如你要访问交换机,假如交换机的community是public,其权限是只读的,那你一次用户登陆交换机就可以查看有关交换机记录的数据。如果其权限是读写的,你你就有权修转载 2010-06-24 09:46:00 · 2016 阅读 · 0 评论 -
VC文件操作总结
1.读写文件 CString strPath=“c:/test.txt”;//文件路径 CFile File; if (File.Open(strPath,CFile::modeCreate|CFile::modeNoTruncate|CFile::modeWrite))//写文件 { //do something ... File.Close(); } CString strPath=“c:/test.txt”; CFile File; if (File.Open(strPath,原创 2010-06-22 11:03:00 · 995 阅读 · 0 评论 -
为非VC++工具包创建DLL
我们知道,使用extern “c”只是用在编写c++代码的时候,这样就告诉编译器不要对变量名或函数名进行改编,这样用c,c++或任何编程语言编写的可执行模块都可以访问该变量或函数。问题:即使完全使用c来编程,但使用了不同厂商提供的工具包,Microsoft的c编译器也会对c函翻译 2011-09-19 10:47:07 · 960 阅读 · 0 评论 -
Windows 的 PE 文件结构简介
Windows 的 PE 文件头结构包括三大部分:DOS 文件头、NT 文件头以及 Section 表(节表),在 DOS 文件头后面有一小段 DOS 程序,被称为 DOS stub 程序。DOS stub 程序是运行在 DOS 下面的 16 位程序,目的是指出:当 wind转载 2011-09-21 20:52:13 · 1404 阅读 · 0 评论 -
Windows DLL注入和API拦截简介
1.函数LONG_PTR WINAPI SetWindowLongPtr( __in HWND hWnd, __in int nIndex, __in LONG_PTR dwNewLong);函数介绍参见http://msdn.microsoft.co翻译 2011-09-22 11:26:17 · 3179 阅读 · 0 评论 -
typedef的用法
本文为转载,原文链接为:http://www.cnblogs.com/kerwinshaw/archive/2009/02/02/1382428.html用途一: 定义一种类型的别名,而不只是简单的宏替换。可以用作同时声明指针型的多个对象。比如: char* pa转载 2011-09-26 16:08:43 · 737 阅读 · 0 评论 -
C++ const用法总结
const名叫常量限定符,用来限定特定变量,以通知编译器该变量是不可修改的。使用const,可以避免在函数中对某些不应修改的变量造成可能的改动。非const 变量默认为extern,这样就不可以被程序其它文件访问,要想const变量能够被在其他的文件中访问,必须显式地指定原创 2011-09-23 10:39:56 · 936 阅读 · 0 评论 -
C++的声明和定义及extern用法
变量的定义:用于为变量分配存储空间,还可以为变量指定初始值,程序中变量只能被定义一次。变量的声明:用于向程序表明变量的类型和名称,可以通过使用extern关键字声明变量名而不定义它,这样就不会为变量分配存储空间,声明可以多次执行。变量的定义也是声明,同时还分配了存储空间。原创 2011-09-26 14:38:17 · 913 阅读 · 0 评论 -
引用与指针
1.引用引用就是对象的另一个名字,在实际的程序中,引用主要用作函数的形式参数。引用是一种复合类型,通过在变量名前添加“&”符号来定义。复合类型是指用其他类型定义的类型。在引用的情况下,每一种引用类型都“关联到”某一其他类型。引用必须用与该引用同类型的对象初始化。当引用初始翻译 2011-09-28 17:09:40 · 2597 阅读 · 0 评论 -
浏览式的路径打开对话框
ITEMIDLIST *ppidl; SHGetSpecialFolderLocation(NULL, CSIDL_DESKTOP ,&ppidl); if ( ppidl == NULL) { AfxMessageBox(_T("路径选择对话框打开失败!")); return; } TCHAR path[255] = _T("");转载 2010-01-19 09:52:00 · 849 阅读 · 0 评论