设为首页 加入收藏

TOP

9.1.2 目标代码和创建过程的可移植性
2013-10-07 15:03:37 来源: 作者: 【 】 浏览:74
Tags:9.1.2 目标 代码 创建 过程 移植

9.1.2  目标代码和创建过程的可移植性

当考虑可移植性的时候,通常都会想到源代码,但可移植性也能应用于目标代码。明确地说,对于一段目标代码,如果可以拷贝到某个平台,并且不需修改立即就可以使用,那么这段目标代码对这个平台是可移植的。如memset的例子所展现的那样,程序员可以设法提高源代码的可移植性,但是却不能提高目标代码的可移植性。目标代码可移植与否取决于相关平台的类型,而不是产生该目标代码的源代码。

实际上,目标代码是很少具有可移植性的。因此,如果希望在一个新的平台P创建我们程序库的目标代码,那么我们通常都必须把源代码先移植到平台P,然后在这个平台创建这段代码。这个过程要求我们程序库的创建过程(built procedure)是可移植的。如果我们的代码足够简单,那么整个创建过程将只涉及到几行命令;但如果我们的代码非常地多并且很复杂,那么创建过程也会相应地很大和很复杂。例如,创建使用bzero函数的这段代码,创建过程将需要知道在平台P是否可以得到函数bzero,并且是否必须相应地设置HASBZERO。复杂的代码可能还会有更多这种的依赖性。理想情况下,我们希望源代码和创建过程都具有可移植性。但遗憾的是,对于复杂的代码体,编写可移植的创建过程将会是非常困难的,甚至是不可能的;因为在不同的平台上,使用的是各种各样不同的创建工具。

在下面各节里,我们将讨论使编写可移植的C++(www.cppentry.com)源代码和创建过程变得复杂的各种因素。

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇4.9 参考文献和相关资料 下一篇9.1.1 可移植性的优缺点

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: