谈谈 C++ 的私有继承 (Private Inheritance) 在跨平台(Cross Platform)上的妙用

本文探讨了在跨平台开发中,如何使用C++的私有继承(private inheritance)来解决平台相关代码导致的问题。传统方法通过条件编译实现平台抽象,但随着平台增多,头文件变得复杂易出错。采用私有继承可以将平台特定代码隔离,减少影响范围,提高代码维护性和安全性。文章通过示例展示了私有继承如何改善跨平台框架的设计。
摘要由CSDN通过智能技术生成

当前mobile平台上主流的C++开发环境有Windows Mobile, Symbian, Brew, Linux等等, 为了加速应用程序在各个平台上的开发, 通常的办法是做一个跨平台的框架(Cross Platform Framework)。那样很多平台无关的代码共享无疑加速了开发,现在关键的问题是如何做到这样平台抽象层。

我们看到过很多和下面类似的代码:

在做完这个东西之后, 我们或者在一个salThread.cpp里面分别用不同的宏SYMBIAN_SAL, WM_SAL来分隔开实现, 或者用3个不同的cpp, 比如salThread_Brew.cpp, salThread_Symbian.cpp。。。那样每个平台找到头文件和对应的cpp也就可以编译了。其实很多的地方都是这样操作的, 包括一些大型的C++跨平台的库也是这样实现着, 但是随着开发的深入, 我们明显感觉到了压力。

第一, 如果程序员不是很熟悉某些特性,

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值