读《大规模C++程序设计》
目标码神
这个作者很懒,什么都没留下…
展开
-
Preserving Prefix Integrity
前缀(prefix)的目的是给组件或者全局逻辑结构(global logical construct)的定义的物理位置(physical location)提供一个分层的标识(hierarchical identification)。设计良好、功能内聚的包的包前缀提供了语义和物理信息。不应该仅仅关注前缀标识的语义属性,前缀更主要的目标是强迫拥有相似前缀逻辑上内聚的功能被打包到同一个库中。翻译 2017-09-05 19:41:19 · 386 阅读 · 0 评论 -
The Release Process
作为一个大项目上并行开发的许多开发者的一员,你会发现找出你的回归测试失败的原因是很难的(是你刚刚对这个包的改动导致的呢还是对一些底层包的改动导致的呢?)。开发软件如果处在一个会自发性变化的环境中,即使对于一个小项目来说也会影响生产率,而对于大多数大项目来说可能就根本无法完成。 内部发布(Internal releases)是任何大型开发项目必备的部分。包群(Groups of packages翻译 2017-09-07 13:52:43 · 311 阅读 · 0 评论 -
Start-Up
程序被第一次调用到控制线程进入main之间的这段时间称为启动(start-up)。也就是在这段时间里,每一个编译单元中所有的非局部静态对象都会被构造。 定义在编译单元内的非局部静态变量的初始化顺序是依赖于编译器实现的,应该注意在使用这种对象前是否已经初始化。当我们想要提供一个全局可访问的单一实例对象时,对全局数据的厌恶引导我们寻找替代方案。我们可以使用一个称为module的逻辑结构,这中逻辑结构在翻译 2017-09-07 14:46:56 · 791 阅读 · 0 评论