Home

Boost内存池使用与测试

Boost库是一个可移植的开源C++函数库,鉴于STL(标准模板库)已经成为C++语言的一个组成部分,可以毫不夸张的说,Boost是目前影响最大的通用C++库。Boost库由C++标准委员会库工作组成员发起,其中有些内容有望成为下一代C++标准库内容,是一个“准”标准库。 Boost内存池,即boost.pool库,是由Boost提供的一个用于内存池管理的开源C++库。作为Boost中影响较大的一个库,Pool已经被广泛使用。 Boost内存池使用与测试 [TOC] 什么是内存池   池 是在计算机技术中经常使用的一种设计模式,其内涵在于:将程序中需要经常使用的核心资源先申请出来,放到一个池内,由程序自己管理,这样可以提高资源的使用效率,也可以保证本程序占有的资源...

Read more

C++ 编程规范

C++ 编程规范 这是一本 由两位世界顶级专家联袂巨献,适合所有层次 C++程序员 的 C++ 界20年集大成之作,这里有 101 条关于 C++ 编程的规则、总则与最佳实践。 编程规范与人的关系 好的编程规范能够带来下列许多相互关联的优点: 改善代码质量 鼓励开发人员一贯地正确行事,从而能够直接提高软件的质量和可维护性。 提高开发速度 开发人员不需要总是从一些基本原则出发进行决策。 增进团队精神 有助于减少在一些小事上不必要的争论,使团队成员更容易阅读和维护其他成员的代码。 在正确的方向删取得一致 使开发人员放开手脚,在有意义的方向上发挥创造性。 第0条:不要拘泥于小节 (又名:了解哪些东西不应该标准化) 只规定需要规定的事情 不要强制施加个人喜好或者过时的...

Read more

大象——Thinking in UML

大象——Thinking in UML 大音希声,大象希形, 近来闲暇,随手翻起一些曾经看过的书籍,才发现又有新的收获。 面向对象 面向对象 在如今的软件行业是一个很著名的术语,以至于 人们以为面向对象是现代科学发展到一定程度才出现的研究成果 。 普通民众的面向对象 在很多人看来,面向过程 和 面向对象 都是一种软件技术 ,例如 把面向过程归纳为结构化程序设计、DFD图、ER模型、UC矩阵等,而面向对象则被归纳为继承、封装、多态、复用等具体的技术。 事实上,上述的所有技术都只是人们在采用不同的方法来认识和描述这个世界时所采用的工具。 他们都只是表征而不是本征。 大师眼中的面向对象 接下来让我们看看面向对象大师,也就是UML创始人之一的 Grady Booch 在20...

Read more

C++ 创建类时常考虑的问题

本文仅以c++为例,简要说明创建一个类时我们需要考虑的问题。 创建一个新类实际上就是定义一 个新的数据类型,因此设计类需要当做类型设计来对待的,c++的设计者在设计语言的内置类型时是经过深思熟虑的,当然我们新设计类时也需要这样来对待,那么我们具体会思考什么样的问题呢? 继承 将这个类添加到现有继承层次结构中是否合适? 应该使用公有继承还是私有继承? 应该支持多继承吗?这样会影响哪些成员函数设置为虚函数。 组合 相对于直接使用继承,将一个关联的对象作用数据成员是否更合适? 抽象接口 打算将该类设计为抽象基类以使子类重写各个虚成员函数吗? 标准设计模式 能否在类的设计中使用众所周知的设计模式? 使用设计模式能够从前人深思熟虑...

Read more

SLIP—串行线路上传输数据报的非标准协议

做了这么多年的程序员后,总想资源回收一下,写一点点什么,却又发现无从写起。 SLIP—串行线路上传输数据报的非标准协议 简介 SLIP(Serial Line Internet Protocol,串行线路网际协议),该协议是Windows远程访问的一种旧工业标准,主要在Unix远程访问服务器中使用,现今仍然用于连接某些ISP。因为SLIP协议是面向低速串行线路的,可以用于专用线路,也可以用于拨号线路,Modem的传输速率在1200bps到19200bps。 SLIP ,即串行线路IP,实际上是一个标准,它通常用于运行TCP/IP协议点对点连接之中。 它并非Internet标准。 历史 SLIP起始于八十年代初3COM UNET TCP/IP实现,它仅是一个包协议:SLIP定...

Read more

神秘的程序员——编程的乐趣

程序员,一群神秘的生物,程序员的世界,你真不一定懂。 今天我们来聊聊 编程为什么有乐趣,作为回报,编程从业者(程序员的正统名称)期望从中得到什么样的快乐? 前言 无论我如何破沫横飞地向你形容一位程序猿顺畅的敲代码是一件多么 幸福 的事情,我想你都不会和什么热血、震撼、暴力美 联系起来。 你心眼里的程序猿1 你心眼里的程序猿2 你心眼里的程序猿3 程序猿的暴力美学 但是你懂得,程序猿这群生物总是喜欢创造一些自我感觉良好的……无聊却酷炫的东西。 比如让你觉得敲击代码确实是一件热血、震撼、暴力美学的玩意。 像这样~ 据说每一个看到这个画面的人都在心中默默的感受到了 biubiu~ bangbang~ 的击打感。 编程为什么有乐趣 创造欲 这是创造事物的纯粹快...

Read more

车载以太网技术趋势与挑战

车载以太网技术趋势与挑战 文章来源: 转载 原文链接: http://ee.ofweek.com/2017-04/ART-8500-2807-30123115.html 导读 汽车智能化、网联化,甚至自动驾驶大浪已经来临;浪潮带来的是ADAS技术的不断革新、高品质车载娱乐影音的影音推进、以及OTA远程升级、V2X、大数据、云计算等一系列技术的发展;这推进了车载网络容量需求的爆发式发展,显然这已经超出了CAN或FlexRay等传统车载网络的历史使命。 汽车智能化、网联化,甚至自动驾驶大浪已经来临;浪潮带来的是ADAS技术的不断革新、高品质车载娱乐影音的影音推进、以及OTA远程升级、V2X、大数据、云计算等一系列技术的发展;这推进了车载网络容量需求的爆发式发展,显然这已经超...

Read more