C/C++
文章平均质量分 68
stackoverlow
这个作者很懒,什么都没留下…
展开
-
我读STL源码剖析(1)
学习编程的人都知道,阅读、剖析名家代码乃是提高水平的捷径。源码之前,了无秘密,尤其是为了效率无所不用其极的SGI STL。大师们的缜密思维、经验结晶、技术思路、独到风格,都原原本本体现在源码之中。在你仔细推敲之中,迷惑不解之时,恍然大悟之际,你的经验、思维、视野、知识乃至技术品位都会获得快速的成长。 而作为一个喜欢追求事物内在原理、理论的人,这本书无疑很适合的。于是这本书在书柜原创 2012-06-19 17:56:39 · 1168 阅读 · 0 评论 -
读STL源码剖析(2)
SGI STL的容器实现(traits技术广泛用于容器中和迭代器中) ps:篇幅原因代码经过删减并非完整代码 1)vector容器 vector容器可以想象成一个动态数组,对于空间足够的情况,行为类似数组但更加安全,当空间不足时,vector容器会自动实现 "配置新空间/数据移动/释放旧空间" 的行为,vector容器的空间配置器默认使用的是上次讲到的alloc配置器,迭代器其实就是指针,嗯原创 2012-06-22 16:18:58 · 991 阅读 · 0 评论 -
读STL源码剖析(3)
今天把STL算法那章看完了,其实对于STL的算法实现也没什么好说的,除了所有算法都提供一个迭代器接口以支持任何类型的算法实作(当然对于效率无所不用其极的SGI STL来说,各种特化版本是免不了的,其中也用到各种型别萃取达到激活重载机制以达到最佳效率的技术)。 想要提一下的就是其中的sort算法(真正的无所不用其极),在其中第一次看到一个名叫内省排序(混合式排序)的算法,主体依原创 2012-06-23 19:46:24 · 707 阅读 · 0 评论 -
STL源码剖析总结
侯老师说泛型技术学习分三层境界,最高境界自然就是自行扩展STL了,要自行扩展不单要清楚STL的实现及原理还要对STL有深刻理解,以达到能够编写无缝融入STL的自行扩展的组件,嘛,就是写库吧 下面就贴上一个自己写的简单的数组容器,当然迭代器为原始指针所以就不需要专门编写迭代器,STL也提供了原始指针的特化版本萃取机,所以并不需要为迭代器编写额外代码(要不然就麻烦了),为了更好理解STL空间配置器也原创 2012-06-24 22:36:58 · 758 阅读 · 0 评论 -
C++反汇编与逆向分析技术揭秘小笔记
题记:分析能力很大程度体现在分析效率上,语法细节乃至数据代码间的复杂性不应该成为主要困难 所谓逆向分析,不应该只是单纯的逆向代码,真正目标应该是逆向出代码作者的思维、意图 即透过代码分析意图 第二章: 编译器一旦发现代码中有浮点计算,则初始化浮点寄存器 汉字编码方式有些特殊,ascii和unicode都有与之匹配的编码格式,所以即使汉字使用2个字节,在char型字符串中任然原创 2012-06-29 20:23:07 · 3201 阅读 · 0 评论 -
STL线程安全问题--effective stl
条款12:对STL容器线程安全性的期待现实一些 标准C++的世界是相当保守和陈旧的。在这个纯洁的世界,所有可执行文件都是静态链接的。不存在内存映射文件和共享内存。没有窗口系统,没有网络,没有数据库,没有其他进程。在这种情况下,当发现标准没有提到任何关于线程的东西时你不该感到惊讶。你对STL的线程安全有的第一个想法应该是它将因实现而不同。 当然,多线程程序是很普遍的,所以大部分STL厂商努力使他转载 2013-07-02 15:24:35 · 904 阅读 · 0 评论 -
cocos2dx-使用TexturePacker为资源文件打包
在cocos2dx开发过程中,对于一些动画效果和一些碎图,可以通过TexturePacker将游戏中的图片合并为一张大图,TexturePacker会方便的导出一个png图片和一个plist图片,在cocos2dx中就可以将大图添加到帧缓存,并方便的生成精灵和动画,TexturePacker会很好地将资源合并、压缩,节省大量的空间,提高开发效率和程序的效率,是一个很棒的工具。 这里附上工原创 2014-03-24 14:06:45 · 979 阅读 · 0 评论 -
使用PhysicsEditor为物理引擎创建刚体形状
PhysicsEditor是一个非常方便的工具,用来为游戏开发中的精灵生成物理引擎需要的刚体形状定义,更好的开发游戏的物理世界,不需要费劲取自己创建刚体形状,大大提高了游戏开发的效率,PhysicsEditor确实是一个不错的游戏开发工具。原创 2014-03-24 14:15:19 · 938 阅读 · 0 评论