- 博客(15)
- 资源 (8)
- 收藏
- 关注
转载 在 git 中忽略文件 gitignore 与 exclude
Git 过滤文件,控制上传 http://blog.csdn.net/hustpzb/article/details/8649545Git常用命令解说 http://zensheno.blog.51cto.com/2712776/490748
2013-08-26 15:06:58 8383
原创 <C++沉思录>学习笔记
第一篇 动机 讲述C++什麽地方吸引了作者,和作者为什麽要在编程中使用C++。 一开始,作者就提出了C++本质——抽象和封装:类。 抽象可以帮助设计者可以有所侧重,C++使我们更容易把程序看作抽象的集合,同时也隐藏了那些用户无须关心的抽象工作细节。封装则是C++可以把问题精心划分为分割良好的模块,使得模块与模块之间的信息得到很好的隐藏。模块化不完全同于C中也能实现模块化的函数,书中P
2013-08-12 23:55:25 876
转载 时间在编程中的定义级相关类型介绍
Unix时间戳(Unix timestamp),或称Unix时间(Unix time)、POSIX时间(POSIX time),是一种时间表示方式,定义为从格林威治时间1970年01月01日00时00分00秒起至现在的总秒数。Unix时间戳不仅被使用在Unix 系统、类Unix系统中,也在许多其他操作系统中被广泛采用。 目前相当一部分操作系统使用32位二进制数字表示时间。此类系统的Uni
2013-08-12 23:48:45 1104
转载 回调函数中调用类中的非静态成员变量或非静态成员函数
回调函数中调用类中的非静态成员变量或非静态成员函数【问题】如何在类中封装回调函数?a.回调函数只能是全局的或是静态的;b.全局函数会破坏类的封装性,故不予采用;c.静态函数只能访问类的静态成员,不能访问类中非静态成员。 1. 如何让静态函数访问类的非静态成员。 a.声明一静态函数a(),将类实例对象指针做为参数传入。如:class A(){ static v
2013-08-12 23:33:59 1110
原创 C++ Primer学习笔记(三):第7章
三类特殊的函数:内联函数、类成员函数、重载函数从 C 语言背景转到 C++ 的程序员习惯通过传递指针来实现对实参的访问。在 C++ 中,使用引用形参则更安全和更自然。如果使用引用形参的唯一目的是避免复制实参,则应将形参定义为 const 引用。应该将不需要修改的引用形参定义为 const 引用。普通的非 const 引用形参在使用时不太灵活。这样的形参既不能用
2013-08-12 23:03:46 795
原创 C++ Primer学习笔记(二):第3、4、5、6章
关键概念:安全的泛型编程习惯于 C 或 Java 编程的 C++ 程序员可能会觉得难以理解,for 循环的判断条件用 != 而不是用 < 来测试 vector 下标值是否越界。C 程序员难以理解的还有,上例中没有在 for 循环之前就调用 size 成员函数并保存其返回的值,而是在 for 语句头中调用 size 成员函数。C++ 程序员习惯于优先选用 != 而不是 < 来编写循环判断条件。在
2013-08-12 23:02:29 958
原创 C++ Primer学习笔记(一):第1、2章
C++ 中,把负值赋给 unsigned 对象是完全合法的,其结果是该负数对该类型的取值个数求模后的值。所以,如果把 -1 赋给8 位的 unsigned char,那么结果是 255,因为 255 是 -1 对256 求模后的值。 对于实际的程序来说,float 类型精度通常是不够的——float 型只能保证 6 位有效数字,而 double 型至少可以保证 10 位
2013-08-12 22:03:12 795
原创 Windows终止异常程序
注意:不要将结构化异常处理同C++的异常处理相混淆.C++异常处理是一种不同形式的异常处理,其形式是使用C++关键字catch和throw.微软的Visual C++也支持C++的异常处理,并且在内部实现上利用了已经引入到编译程序和Windows操作系统的结构化异常处理的功能.SEH实际包含两个主要功能:结束处理(terminationhandling)和异常处理(exceptionhan
2013-08-12 22:01:28 1374
原创 Windows动态链接库编程笔记
基础:1.DLL与进程关系DLL的文件映像被映射到调用进程的地址空间中,DLL的函数供进程中运行的所有线程使用.这时,DLL几乎将失去它作为DLL的全部特征.对于进程中的线程来说,DLL的代码和数据看上去就像恰巧是在进程的地址空间中的额外代码和数据一样.1当一个线程调用DLL函数时,该DLL函数要查看线程的堆栈,以便检索它传递的参数,并将线程的堆栈用于它需要的任何局部变量.
2013-08-12 21:34:18 1274
原创 如何快速封装简练的C++类
1.依照C语言风格写单个功能模块函数,数据用全局变量传递2.测试功能是否正常,资源时候泄露3.上述函数为成员函数,全局变量为成员变量封装成类4.依照C++的基本原则处理接口的封装,数据的隐藏5.添加线程安全6.如果功能涉及范围较广,可以抽象出基类,使用派生7.集成到项目代码中,如有需要做跨平台处理
2013-08-12 21:28:08 1401
原创 学习C++实践者的方法
C++的复杂性有两种分类办法:1)分为非本质复杂性和本质复杂性)其中非本质复杂性分为缺陷和陷阱两类;2)分类办法是按照场景分类:库开发场景下的复杂性和日常编码的复杂性.从事日常编码的实践者的角度来说,采用后一种分类可以让我们迅速掌握80%场景下的复杂性.建议1:有辨别力地阅读(包括那些被广泛称为“经典”的)C++书籍.建议2:养成随时查阅资料和文档的习惯.建议3:C
2013-08-12 21:17:22 1066
转载 努力成为优秀的工程师
文/李航华为诺亚方舟实验室首席科学家李航结合自己的亲身经验,提出了成为优秀工程师应该遵循的五项原则:面对问题,解决问题;系统地解决问题;站在用户角度看问题;以最小的代价获得最大的效益;磨在细处。我一直在IT企业的研究部门任职,迄今经历了三家公司:NEC、微软、华为。工作都是既有基础研究,又有产品开发。其实,这两者既有密切联系,性质上又迥然不同。前者在于发现或发明普适性的理论与方
2013-08-12 21:13:01 1014
原创 NSPR学习笔记(一):PR_LOG的使用
#include "nspr.h"#include #include #include using namespace std;int main(){ string strTest = "this is a test."; PR_SetLogFile("E:\\test.log"); PR_LogPrint("%s", strTest.c_str()); PR_LogPri
2013-08-05 23:25:25 2686
原创 C++ delete与delete[]异常
原则上是,new与delete,new []与delete []分别配对使用。但有时调试时会抛出异常,于是测试了一下得出如下结论:1、对于内置对象,如int,float等,不管new与new [],后面使用delete或delete []都不会抛出异常,即资源未被泄露;2、对于类对象,包含自定义类、内置类(如string等),必须按照原则要求配对使用,否则会抛出异常。
2013-08-04 23:39:31 3913
原创 NSPR在Windows上编译及使用
Netscape Portable Runtime (NSPR) 提供一套面向系统级的与平台无关的 API 和类似于libc的函数. 这些API被用在Mozilla客户端, Red Hat公司、Sun公司的服务应用程序以及其他公司的一些软件中。
2013-08-04 15:14:57 3457 1
剪裁onvif之后的wsdl文件示例
2014-03-09
G711参考资料
2013-12-01
Live555源码分析RTSP客户端
2013-11-29
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人