向左右向右走 —— 小时了了的技术博客

关注C++开发技术、架构设计、软件项目管理、软件产品管理等

posts - 24,comments - 59,views - 36166

随笔分类 -  架构设计

基于纤程(Fiber)实现C++异步编程库(一):原理及示例
摘要:纤程(Fiber)和协程(coroutine)是差不多的概念,也叫做用户级线程或者轻线程之类的。Windows系统提供了一组API用户创建和使用纤程,本文中的库就是基于这组API实现的。纤程的概念中有两个关键点: 纤程拥有独立的栈空间和寄存器环境; 纤程在用户态实现调调度,也就是说完全由程序员控制; 阅读全文
posted @ 2014-12-21 21:32 小时了了 阅读(5364) 评论(0) 推荐(2) 编辑
C++二进制输入输出流接口设计
摘要:提到输入输出流,作为CPPer很自然的就会想到std::iostream,对于文本流的处理,iostream可以说足够强大,应付一般复杂度的需求毫无压力。对二进制流处理却只能用“简陋”来形容,悲催的是,作为一个在多媒体软件领域默默耕耘多年的码农日常打交道最多的偏偏就是二进制流。前些年流行过一本书叫做... 阅读全文
posted @ 2014-08-06 23:15 小时了了 阅读(2279) 评论(1) 推荐(1) 编辑
谈谈继承的局限性
摘要:有一种普遍的说法是把封装、继承和多态并称为面向对象的三大特征。如果你很熟悉C++并且对面向对象思想有过一些思考,那么很可能对这个说法有过怀疑,面向对象思想在本质上认为世界是由对象构成的,和面向过程是世界观的不同,而所谓的三大特征实际和面向对象的思想本质没有半毛钱的关系,准确的表述应该是封装、继承和多态是C++相对于C的三大特征。如果你碰巧了解一点C++编译器可能会发现封装也好,继承、多态也好都只是语法糖,技巧层面的东西而已,和思想无关。以上为废话。本文主要就C++的继承机制进行一些讨论。很多C++教材在讲到继承时喜欢利用几何上的一些概念,比如对如下的集合关系进行建模: 在一次内部技术培训的时候 阅读全文
posted @ 2011-10-17 09:08 小时了了 阅读(1870) 评论(17) 推荐(3) 编辑

< 2025年2月 >
26 27 28 29 30 31 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 1
2 3 4 5 6 7 8

点击右上角即可分享
微信分享提示