自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(8)
  • 收藏
  • 关注

原创 H264详解之打包形式

SODB (String Of Data Bits), RBSP (Raw Byte Sequence Payload)的概念见H264标准。关于EBSP (Encapsulated Byte Sequence Payload),并不是H264标准里面的概念,而是H264参考模型jm代码里面使用的缩略语 (见nal.c)我们会遇到两种H264的应用:文件形式和流形式。1.

2017-09-02 21:55:28 2165

原创 Objective-C: ARC和Non-ARC混编的问题

假设有个framework是按照non-ARC编译的,并且有个类方法创建并返回一个对象:+(TestMe *)fetch {    TestMe *obj = [[[TestMealloc] init]autorelease];    return obj;} 而调用者是使用ARC编译的:TestMe *obj = [TestMefetch];[obj

2017-08-19 10:42:33 513

原创 C++多重继承和基类地址

C++支持多重继承,比如class Derived : public Base1, public Base2 {    …}; 我们熟知的基类指针强转成继承类指针的用法是这样子的:base *p1 = … // 实际指向derived objectderived *p2 = (derived *)p1;或者运行时转换,需要打开编译选项rttiderived *p

2017-08-19 09:18:47 1218 1

原创 c/c++ const的详解

C语言里const限定符告诉编译器被修饰的变量的值是不会改变的,编译器会针对const类型的变量作优化。另外const也增强了代码的可读性,符合designby contract实践。 申明和定义申明的时候不需要赋值,定义的时候需要:file1.c:const int a = 5; // 定义如果a的作用域不是当前文件,那么编译器会给这个简单变量分配内存(因为其他文件可

2017-08-05 15:12:13 384

原创 使用flex和bison创建过滤器

假设我们有一个类具有一些属性。这个类有很多实例。给定一个过滤的规则,挑选符合规则的实例。假设规则使用类似C语言的语句进行描述。例子:属性列表width     intheight    intfps         floatos           string一种可能的过滤器:width > 640 || height 1. 构造词法器fil

2017-08-01 22:12:41 780

原创 生产力:编写属于你自己的日志分析器(3)

这一节讲解如何扩展Scintilla,用来在右侧滚动条区域增加各种标记(不同形状和颜色)。这种在滚动条上显示标记的做法在一些主流编辑器上很流行,比如XCode用红色标记编译error,用黄色标记编译warning(参见下图右侧滚动条区域):Scintilla本并不支持客制化滚动条。原生支持的margin显示在窗口左侧,跟随窗口内容一起滚动,并不能提供整个文档的概览。幸运的是

2017-07-09 20:38:35 329

原创 生产力:编写属于你自己的日志分析器(2)

这一讲是整体的设计思路。由于需要高度定制显示内容,我选择了Scintilla作为核心编辑器。关于Scintilla,是一款开源的支持很多平台的编辑器引擎,有些著名的编辑器就是建立在Scintilla之上的。下载Scintilla源代码(http://www.scintilla.org/ScintillaDownload.html)。当然Scintilla有其局限性,并不能满足我们的需求。本专题会讲

2017-07-01 18:02:02 228

原创 生产力:编写属于你自己的日志分析器(1)

工程师们经常需要分析日志来理解系统发生了什么事情,出来什么问题。日志通常含有大量的信息,搜索自己关心的部分可以通过grep或者普通的文本搜索对话框进行。对于复杂一点的业务,这种简单的方法难以胜任。比如你想搜索一下某个时间段某个窗口发生的事件,然后又想搜索它的字窗口的大小,然后又想...你会发现之前搜索好的内容在下一次搜索时被清空了。当然通过grep可以把这些合并起来,但是糟糕的事情又来了,这些合并

2017-07-01 08:19:05 273

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除