
C/C++
文章平均质量分 75
panpanquan
sun-yat univercity
展开
-
rtsp
<br />因为项目需要,学习了一下RTSP协议,为了防止以后忘记,就把学习过程和成果记载下来。期间参考了一些网上的资料,并分析了VLC的RTSP报文。<br /> RTSP(Real Time Streaming Protocol,实时流协议),是由Real Network和Netscape共同提出的如何有效地在IP网络上传输流媒体数据的应用层协议。RTSP提供一种可扩展的框架,能够提供可控制的,按需传输的实时数据,比如音频和视频文件。源数据可以包括现场数据的反馈和存储的文件。RTSP对流媒体提供了转载 2010-06-28 21:48:00 · 910 阅读 · 0 评论 -
DLL的MFC编程
<br />DLL(Dynamic Link Library,动态链接库)是微软公司为Windows和OS/2操作系统设计一种供应用程序在运行时调用的共享函数库。DLL是应用程序的一种扩展,也是软件共享和重用的传统方法。<br />DLL除了可同时被多个应用程序共享外,还可以在不改变调用接口(从而不需修改使用它的应用程序)的情况下,改进和升级里面的库函数。而且DLL与编写它的语言无关,例如,用VC生成的规则DLL,可以被VB、Delphi等生成的应用程序使用。<br />DLL可以用多种语言和工具编写,我们原创 2010-06-01 15:13:00 · 713 阅读 · 0 评论 -
网络编程基础
这里的IP网络是指基于因特网协议套件(TCP/IP协议栈)的网络,包括:因特网(Internet)、城域网(Metropolitan Area Network,MAN)和内部网(Intranet)等。为了便于分析和管理,一般将通信网络抽象为若干层。主要有ISO(和IEC共同)制定的7层参考模型(Reference Model)ISO/OSI(国际标准,失败,主要用于理论研究)和因特网5层参考模型TCP/IP协议栈(实事标准,成功,应用十分广泛)。参见表13-1和图15-2&3。表13-1 ISO/OSI原创 2010-06-02 13:56:00 · 519 阅读 · 0 评论 -
组件编程
面向过程的编程重用函数、面向对象的编程重用类、范型编程重用的是算法的源代码,而组件编程则重用特定功能完整的程序模块。每个组件会提供一些标准且简单的应用接口,允许使用者设置和调整参数和属性。用户可以将不同来源的多个组件有机地结合在一起,快速构成一个符合实际需要(而且价格相对低廉)的复杂(大型)应用程序。组件区别于一般软件的主要特点,是其重用性(公用/通用)、可定制性(设置参数和属性)、自包容性(模块相对独立,功能相对完整)和互操作性(多个组件可协同工作)。可以简单方便地利用可视化工具来实现组件的集成,也是组件原创 2010-06-01 15:43:00 · 3547 阅读 · 0 评论 -
创建和使用动态链接库 (C++)
<br /> 创建和使用动态链接库 (C++) 收藏 <br /><br />我们将创建的第一种类型的库是动态链接库 (DLL)。使用 DLL 是一种重用代码的绝佳方式。您不必在自己创建的每个程序中重新实现同一例程,而只需对这些例程编写一次,然后从需要该功能的应用程序引用它们即可。 <br />本演练涵盖以下内容: <br />创建新的动态链接库 (DLL) 项目。 <br />向动态链接库添加类。 <br />创建引用动态链接库的应用程序。 <br />在控制台应用程序中使用类库的功能。 <br />运转载 2010-05-31 16:54:00 · 478 阅读 · 0 评论 -
动态链接库
<br />动态连接库的创建步骤:<br /><br /> 一、创建Non-MFC DLL动态链接库<br /><br /> 1、打开File —> New —> Project选项,选择Win32 Dynamic-Link Library —>sample project<br /><br /> —>工程名:DllDemo<br /><br /> 2、新建一个.h文件DllDemo.h<br /><br />以下是引用片段:<br /> #ifdefDllDemo_EXPORTS<br />转载 2010-05-31 14:29:00 · 372 阅读 · 0 评论 -
回调函数简单说明
<br />回调函数是由用户撰写,而由操作系统调用的一类函数,回调函数可以把调用者和被调用者分开,调用者(例如操作系统)不需要关心被调用者到底是哪个函数,它所知道的就是有这么一类函数,这类满足相同的函数签名(函数原型,参数,返回值等),由用户书写完毕后在被调用就可以了。实现上回调函数一般都是通过函数指针来实现的。<br />典型的回调函数是MFC 下的定时器处理函数ontimer,你只需要添加这个消息响应函数,然后在初始化的时候将ontimer指针传递给操作系统,操作系统就会按照设定好的时间来循环调用ont转载 2010-05-31 14:05:00 · 571 阅读 · 0 评论 -
区别区别更健康
突然看见这种文件命名习惯.cc 是为了区别 .c,表示 C++ 源文件.hh 是为了区别 .h,表示 C++ 头文件原创 2010-05-20 17:20:00 · 384 阅读 · 0 评论 -
Linux信号量 sem_t简介
<br /> <br />信号量的数据类型为结构sem_t,它本质上是一个长整型的数。函数sem_init()用来初始化一个信号量。它的原型为: <br />extern int sem_init __P ((sem_t *__sem, int __pshared, unsigned int __value)); <br />sem为指向信号量结构的一个指针;pshared不为0时此信号量在进程间共享,否则只能为当前进程的所有线程共享;value给出了信号量的初始值。 <br />函数sem_post转载 2010-07-07 17:50:00 · 4497 阅读 · 0 评论 -
sprintf函数详细解释
<br /><br />sprintf() 格式化输出函数(图形)<br />功能: 函数sprintf()用来作格式化的输出。<br />用法: 此函数调用方式为int sprintf(char *string,char *format,arg_list);<br />说明: 函数sprintf()的用法和printf()函数一样,只是sprintf()函数给出第一个参数string(一般为字符数组),然后再调用outtextxy()函数将串里的字符显示在屏幕上。arg_list为参数表,可有不定个数。通转载 2010-07-02 09:45:00 · 670 阅读 · 0 评论 -
pragma comment的使用
<br />该宏放置一个注释到对象文件或者可执行文件。#pragma comment(comment-type [,"commentstring"] )<br /><br />comment-type是一个预定义的标识符,指定注释的类型,应该是compiler,exestr,lib,linker之一。<br />commentstring是一个提供为comment-type提供附加信息的字符串,<br />Remarks:<br />1、compiler:放置编译器的版本或者名字到一个对象文件,该选项是被l原创 2010-06-30 15:24:00 · 499 阅读 · 0 评论 -
WaitForMultipleObjects介绍
<br /> <br />WaitForMultipleObjects是Windows中的一个功能非常强大的函数,几乎可以等待Windows中的所有的内核对象(关于该函数的描述和例子见MSDN,)。但同时该函数在用法上却需要一定的技巧。<br /> 原型:DWORD WaitForMultipleObjects(<br /> DWORD nCount,<br /> const HANDLE* lpHandles,<br /> BOOL bWaitAll,<br /> DWORD dwMillise转载 2010-07-01 11:24:00 · 513 阅读 · 0 评论 -
WINSOCK SELECT模型
<br /><br />Select在Socket编程中还是比较重要的,可是对于初学Socket的人来说都不太爱用Select写程序,他们只是习惯写诸如connect、accept、recv或recvfrom这样的阻塞程序(所谓阻塞方式block,顾名思义,就是进程或是线程执行到这些函数时必须等待某个事件的发生,如果事件没有发生,进程或线程就被阻塞,函数不能立即返回)。<br /> 可是使用Select就可以完成非阻塞(所谓非阻塞方式non-block,就是进程或线程执行此函数时不必非要等待事件的转载 2010-07-01 09:51:00 · 1355 阅读 · 0 评论 -
linux下C语言多线程
<br />linux下C语言多线程编程实例 <br />下面先来一个实例。我们通过创建两个线程来实现对一个数的递加。<br />或许这个实例没有实际运用的价值,但是稍微改动一下,我们就可以用到其他地方去拉。<br />下面是我们的代码:<br />/*thread_example.c : c multiple thread programming in linux<br />*author : falcon<br />*E-mail : tunzhj03@st.lzu.edu.cn<br />*/<br转载 2010-06-29 10:02:00 · 918 阅读 · 1 评论 -
COM
COM(含DCOM和COM+)组件技术存在许多问题,其中有一些是关键的,有的甚至是致命的。组件技术主要强调在独立开发和部署的程序之间的一套约定(contract),COM则是微软公司将这些约定规范化的首次尝试。COM既能作为设计范例(paradigm)(它将组件的约定,表示为类型定义),也可用作支持平台技术。作为前者,COM编程模型相当成功;但是后者却存在诸多问题,正是由于缺乏稳固的平台技术,COM时代面临着终结。组件间的约定,纯粹是通过用户与组件之间的语义保证和假设的形式来表示的。但是,仍需要定义某种形式原创 2010-06-02 11:08:00 · 768 阅读 · 0 评论