![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++
文章平均质量分 60
xy365
专注C++开发,目前从事领域为智能交通、视频监控行业。联系方式:chenjianhua1983@gmail.com,欢迎交流。
展开
-
jrtplib—VS2010下RTP开源协议库JRTPLIB3.9.1编译
一、JRTPLIB简介 老外用C++编写的开源RTP协议库,用来进行实时数据传输,可以运行在 Windows、Linux、 FreeBSD、Solaris、Unix和VxWorks 等多种操作系统上,主页为:http://research.edm.uhasselt.be/~jori/page/index.php?n=Main.HomePage二、相关下载jrtplib: h转载 2014-09-09 11:03:58 · 206 阅读 · 0 评论 -
live555中的库写了一个最简单的RTSPServer程序
用live555中的库写了一个最简单的RTSPServer程序,仅用于学习目的。从下例的代码中,可以清析的明白RTSPServer的函数调用流程。[cpp] view plaincopyprint?#include #include "liveMedia.hh" static ServerMediaSession* createNewSMS(UsageEn原创 2013-11-05 15:55:31 · 332 阅读 · 1 评论 -
Windows下VS2010 Qt开发环境搭建
以当前最新的QT4.8.2为例,用户只需下载QT的Windows库:qt-win-opensource-4.8.2-vs2010.exe和VS2010的QT插件:qt-vs-addin-1.1.11-opensource.exe即可。 具体步骤: 1.下载QT的Windows库和VS2010的QT插件 QT的Windows库可从http://qt.原创 2013-09-25 10:46:42 · 1262 阅读 · 0 评论 -
Windows下Visual Studio 2010运行速度优化
Visual Studio 2010 运行速度优化: 关闭 “启用丰富客户端视觉体验 - Enable rich client visual experience” 关闭 “在解决方案资源管理器中跟踪活动项 - Track Active Item in Solution Explorer” 禁用 “IntelliTrace” 禁用转载 2012-06-27 10:13:41 · 1186 阅读 · 0 评论 -
64位win7系统安装vs2010不成功的解决办法
1. 在windows7 x64位操作系统上安装vs2010失败 在vs2010安装过程中,在安装.Net Framework 4.0时报错。2.手动下载.net framework 4 安装 微软已经发布了.Net Framework 4.0 的独立安装包,文件名:dotNetFx40_Full_x86_x64.exe,手动下载安装.Net Framework原创 2013-08-29 13:54:26 · 1653 阅读 · 0 评论 -
Visual C++ 64 位迁移的常见问题
转载来源:http://msdn.microsoft.com/zh-cn/library/3b2e7499%28v=VS.80%29.aspx用 Visual C++ 创建在 64 位 Windows 操作系统中运行的应用程序时,应注意以下问题:在 64 位 Windows 操作系统中,int 和 long 是 32 位值。对于计划为 64 位平台编译的程序,应注意不要将指转载 2013-07-26 14:43:54 · 204 阅读 · 0 评论 -
C++11摘要
以下摘要部分内容。具体内容详见:http://zh.wikipedia.org/wiki/C%2B%2B11#.E9.A1.AF.E5.BC.8F.E8.99.9B.E5.87.BD.E6.95.B8.E9.87.8D.E8.BC.89C++11,先前被称作C++0x,即ISO/IEC 14882:2011,是目前的C++编程语言的正式标准。它取代第二版标准ISO/IEC 1488原创 2012-09-07 15:25:02 · 700 阅读 · 0 评论 -
通过崩溃地址中找到异常代码行(转)
这是从“VC编程经验总结7”中转出来的借花献佛——如何通过崩溃地址找到出错的代码行作为程序员,我们平时最担心见到的事情是什么?是内存泄漏?是界面不好看?……错啦!我相信我的看法是不会有人反对的--那就是,程序发生了崩溃!“该程序执行了非法操作,即将关闭。请与你的软件供应商联系。”,呵呵,这句 M$ 的“名言”,恐怕就是程序员最担心见到的东西了。有的时候,自己的程序在自己的机器上运行得好好的,但转载 2012-09-06 10:17:30 · 937 阅读 · 0 评论 -
How can I convert a floating-point value to an integer in C(关于C++中四舍五入)
How can I convert a floating-point value to an integer in C?This is one of the frequently asked questions about the C language,and it is discussed in short in theC FAQ list,asquestion 14.6.The answe转载 2012-08-13 16:07:00 · 546 阅读 · 0 评论 -
win64bit LoadLibrary总是返回错误码126解决办法
I have been trying to load a 32-bit dll using C++ (from a 32-bit application, on windows 7 64-bit). LoadLibrary returns NULL, and GetLastError returns 126 for "The specified module could not be found.原创 2013-12-20 16:49:25 · 572 阅读 · 0 评论 -
Working with Video Using OpenCV and QT
Video processing is a very important task in computer vision applications. OpenCV comes with its own GUI library (Highgui); but this library has no support for buttons and some other GUI components. T转载 2014-01-08 14:30:01 · 453 阅读 · 0 评论 -
Working with Video Using OpenCV and QT - Part 2
This tutorial was written because of a request from a previous tutorial. In this tutorial, we improve upon the work done in that tutorial by adding a track-bar and display duration of the video. Als转载 2014-01-08 14:31:19 · 261 阅读 · 0 评论 -
Libcurl 简明使用指南
Libcurl 简明使用指南Libcurl为一个免费开源的,客户端url传输库,支持FTP,FTPS,TFTP,HTTP,HTTPS,GOPHER,TELNET,DICT,FILE和LDAP,跨平台,支持Windows,Unix,Linux等,线程安全,支持Ipv6。并且易于使用。http://curl.haxx.se/libcurl/ 从http://curl.haxx.se转载 2014-08-18 16:45:29 · 242 阅读 · 0 评论 -
The C++ Pimpl
转http://www.gamedev.net/page/resources/_/technical/general-programming/the-c-pimpl-r1794转载 2014-05-14 17:16:28 · 179 阅读 · 0 评论 -
开源免费的C/C++网络库(c/c++ sockets library)
(1)ACE庞大、复杂,适合大型项目。开源、免费,不依赖第三方库,支持跨平台。http://www.cs.wustl.edu/~schmidt/ACE.html (2)AsioAsio基于Boost开发的异步IO库,封装了Socket,简化基于socket程序的开发。开源、免费,支持跨平台。http://think-async.com/ (3)POCOPOC转载 2014-04-08 13:26:37 · 236 阅读 · 0 评论 -
DLL(动态链接库)概述
Windows API中所有的函数都包含在dll中,其中有3个最重要的DLL。 (1) Kernel32.dll 它包含那些用于管理内存、进程和线程的函数,例如CreateThread函数; (2) User32.dll 它包含那些用于执行用户界面任务(如窗口的创建和消息的传送)的函数,例如CreateWindow函数;转载 2014-04-18 15:32:18 · 190 阅读 · 0 评论 -
DLL封装 C++类
DLL,在windows和linux下都用,但是不太相同,因为微软的DLL的内存分配和普通编译成为函数之间的内存格式是不一样的,于是有了__declspec(dllexport)和__declspec(dllimport) ,前者输出DLL中的函数,后者调用的时候使用;相信在windows底下封装过DLL经验的人对于这两个东西还是很熟悉的。偶尔去掉它们,其实也不一定会出问题,但是在多线程的重复调用转载 2014-04-18 16:21:37 · 331 阅读 · 0 评论 -
ACE和ICE
背景二十世纪九十年代中期以来,业界一直在使用DCOM和CORBA这样的面向对象的中间件平台。在分布式的应用中,中间件平台托管了大部分网络事务,比如对数据进行编码与解码以进行传送,把逻辑对象地址映射到物理传输端点,根据客户和服务器的机器架构改变数据的表示,以及按照需要自动启动服务器。DCOM和CORBA由于自身的缺点,都没有成功占领大部分分布式计算的市场。DCOM是Microsoft的独转载 2014-04-01 11:13:27 · 602 阅读 · 0 评论 -
Live555中的openRTSP保存H264文件
用Live555 中的openRTSP 保存H264文件很简单。但是发现器保存的h264文件并不能直接被vcl 播放,同一个rtsp源 用vcl保存的h264文件就可以直接被播放。经过研究 发现是 openRTSP没有把SDP 中已经包括的SPS &PPS数据保存到文件中,将 vcl保存的h264文件的前2个00 00 00 01 数据 也就是 SPS &PPS 复制到 openRTSP保存的文件转载 2014-02-24 14:47:00 · 763 阅读 · 0 评论 -
Live555 FAQ
I have successfully used the "testRTSPClient" demo application to receive a RTSP/RTP stream.Using this application code as a model, how can I decode the received video (and/or audio) data?The "testR转载 2014-01-27 15:48:52 · 320 阅读 · 0 评论 -
YUV转为IplImage格式(I420和YV12)
一、YUV简介 一般来说,直接采集到的视频数据是RGB24的格式,RGB24一帧的大小size=width×heigth×3 Byte,RGB32的size=width×heigth×4 Byte,如果是I420(即YUV标准格式4:2:0)的数据量是 size=width×heigth×1.5 Byte。 在采集到RGB24数据后,需要对这个格式的数据进行第一次压缩。即将图像的颜色空间转载 2014-01-24 15:56:23 · 1210 阅读 · 0 评论 -
Windows下定时器使用注意事项
在Windows平台下,一般使用SetTimer函数创建一个计时器,KillTimer函数用于销毁一个计时器。计时器属于系统资源,使用完应及时销毁。SetTimer基于Windows的消息(message),有可能被阻塞。使用WM_TIMER消息触发定时器并不精确。有两个原因: 原因一: Windows计时器是硬件和ROM BIOS架构下之计时器一种相对简单的扩充。回到原创 2012-07-24 17:13:10 · 421 阅读 · 0 评论 -
C++代码中JAVA数据类型使用注意事项
一、javah头文件 Java通过JNI机制调用c/c++写的native程序。c/c++开发的native程序需要遵循一定的JNI规范,下面的例子就是一个JNI函数声明:JNIEXPORT jint JNICALL Java_jnitest_MyTest_test (JNIEnv * env, jobject obj, jint arg0); JVM负责从Ja原创 2012-04-28 14:23:51 · 1110 阅读 · 0 评论 -
VC中嵌入Flash
VC程序中播放Flash,需要嵌入ActiveX控件,Adobe公司提供了一个播放flash的ActiveX控件Shockwave flash object。下载安装“install_flash_player_10_active_x.exe”(目前的最新版本是10.2.3.1)。 同大多数的ActiveX控件一样,VC为Flash实现了一个CWnd的包装:CShockwaveFlash,该类实现了Flash ActiveX控件的所有功能。原创 2011-04-28 11:08:00 · 2416 阅读 · 0 评论 -
Windows平台下网络编程库
在Windows平台进行网络程序开发, 可以使用不同的库, 但是最常用的还是微软自己开发的库。具体说来,有以下4种:(1)Winsock;(2)ws2_32;(3)WinInet;(4)WinHttp。原创 2011-01-10 16:59:00 · 990 阅读 · 0 评论 -
C++中的function object
Function object定义: Function object是一个对象,不过它的行为表现像函数。一般而言,它是由一个重载了operator()的类所实例化得来的对象。 Function object的涵义比通常意义上的函数更广泛,因为它可以在多次调用之间保持某种“状态”——这和静态局部变量有异曲同工之妙;不过这种“状态”还可以被初始化,还可以从外面来检测,这可要比静态局转载 2008-12-30 11:29:00 · 2206 阅读 · 3 评论 -
CRectTracker类的使用方法
原文:http://blog.sina.com.cn/s/blog_57421ff80100b8fu.html 一 使用方法1 定义成员变量 CRectTracker m_RectTracker;2 构造函数设置样式 m_RectTracker.m_nStyle = CRectTracker::resizeOutside|CRectTracker::soli转载 2008-11-03 16:24:00 · 3349 阅读 · 0 评论 -
定点数与浮点数
1、定点数: 定点数指小数点在数中的位置是固定不变的,通常有定点整数和定点小数。在对小数点位置作出选择之后, 运算中的所有数均应统一为定点整数或定点小数,在运算中不再考虑小数问题。(1)定义:数据中小数点位置固定不变的数(2)种类:定点整数(3)小数点在符号位与有效位之间。 注:定点数受字长的限制,超出范围会有溢出。 2、浮点数: 浮点数中小数点的位置是不固定的,转载 2008-10-19 20:38:00 · 3779 阅读 · 1 评论 -
位操作bitset与vector
bitset类模板支持有效的的固定大小位设置操作,vector模板规范支持动态大小的位字符串。 bitset应用举例(从右到左读入位数)#include #include #include using namespace std;const size_t NBITS = 36;void print(const b原创 2008-06-17 08:27:00 · 665 阅读 · 0 评论 -
运用Stdlib.h中bsearch函数查找一个已排序的记录数组
//C++,WinXP操作系统,,VC6.0下编译通过。#include #include #include struct person{ char last[16]; char first[11]; char phone[13]; int age;};static int comp(const void*, const void*);main(){ int i; struct p原创 2008-06-06 10:24:00 · 432 阅读 · 0 评论 -
Windows环境下Unicode编程总结
UNICODE环境设置 在安装Visual Studio时,在选择VC++时需要加入unicode选项,保证相关的库文件可以拷贝到system32下。 UNICODE编译设置 C/C++, Preprocessor difinitions 去除_MBCS,加_UNICODE,UNICODE 在ProjectSetting/link/output 中设置Entr转载 2011-12-02 09:54:19 · 702 阅读 · 0 评论 -
ubuntu下VIM入门指南
一、安装 vim 控制台版本的vim随ubuntu一起发行,因此没必要安装. 然而,如果您更喜欢GUI界面下的vim的话,请从新立得安装vim-gtk软件包或在终端中输入: sudo apt-get install vim-gtk 11.10的版本好像没有自带的vim了二、快速指南 Vim 需要学习很多东西。然而,如果您熟悉了vim的话,您可以利原创 2012-02-03 17:03:02 · 481 阅读 · 0 评论 -
标准C、C++中字符串的大小写转换方法
如何将一个字符串转换成大写或者小写?这是字符串匹配中经常需要做的事情,然而C++的Standard Library并没有提供将std::string转成大写和小写的功能,只有在提供将char转成大写(toupper)和小写(tolower)的功能而已。 但我们可以利用STL的transform配合toupper/tolower,完成std::string转换大(小)写的功能,也看到模版编原创 2012-02-06 13:38:39 · 2586 阅读 · 0 评论 -
串口转换器、虚拟串口转TCP
一、串口转换器由来 为什么要使用串行接口转换器(串口转换器)?目前使用的很多重要的设备仍然使用RS-232接口界面设计(如PC),然而,RS-232是点对点的通信界面,不能实现多机之间互相通信,自身也限制了设备间的传输距离(一般不超过15米)。由于RS-232的不足,为了克服限制,串行接口转换器因运而生,实现RS-232设备到RS-422或RS-485多节点网络的连接(RS-422支持1原创 2012-06-15 16:03:21 · 881 阅读 · 0 评论 -
Visual Studio 2010 中的 Winsock 调用错误
在VS2010中调用Winsock(winsock or winsock2)的bind函数时很有可能会出现一些莫名其妙的错误而导致编译失败,控制台输出的错误信息指向了库中的xxresult,和程序本身的设计似乎没有任何关联。控制台片段:1>c:/program files/microsoft visual studio 10.0/vc/include/xxresult(28):原创 2012-05-22 21:47:20 · 1108 阅读 · 1 评论 -
STL使用注意事项
1:容器list元素删除,错误的erase()代码会i导致迭代器失效,造成程序挂起。2:后台服务程序中尽量不要使用vector容器,因为内存空间只增不减,clear()只清空元素,不回收内存空间。3:STL代码优化4:STL库是否是线程安全的?STLPortSimultaneous read access to the same container from within原创 2012-01-06 16:17:17 · 324 阅读 · 0 评论 -
Unix/windows操作系统上java调用c/c++研究
原理目前java与dll交互的技术主要有3种:jniJni(Java Native Interface)是sun提供的java与系统中的原生方法交互的技术在windows\linux\unix系统中,实现java与native method互调。Jni标准是java平台的一部分,它允许Java代码和其他语言写的代码进行交互。JNI 是本地编程接口,它使得在 Java 虚拟机 (原创 2012-04-25 11:18:40 · 620 阅读 · 0 评论 -
C代码评审检查列表
检查功能项 检查项描述 是否可以自动化检查 内存管理 1.指针在定义的时候必须初始化,如果未分配内存则置为NULL 是 2.指针指向的内存被释放时,指针必须置为NULL 是 3.在栈上禁止分配大块内存,应分配在堆上 否 4.内存是否进行了越界检查原创 2012-02-21 15:49:13 · 362 阅读 · 0 评论 -
VS2010 VC批处理编译生成可执行程序
每次编译生成都需要执行以下2步骤: 一、设置VS2010 VC编译环境 需要从命令行,进入C:\Program Files\Microsoft Visual Studio 10.0\VC\Bin目录,运行vcvars32.bat批处理文件。具体执行如下: cd C:\Program Files\Microsoft Visual Studio 10.0\VC\bin原创 2012-02-28 15:47:41 · 2601 阅读 · 0 评论 -
CMake使用简介
This is CMake, the cross-platform, open-source make system. CMake是kitware公司以及一些开源开发者在开发几个工具套件(VTK)的过程中衍生品,最终形成体系,成为一个独立的开放源代码项目。项目的诞生时间是2001年。其官方网站是http://www.cmake.org ,可以通过访问官方网站获得更多关于cmake的信原创 2012-02-28 18:08:43 · 3882 阅读 · 1 评论