有没有人知道Symbian OS C ++描述符功能的工作端口是否适用于其他操作系统?我记得有一些代码用于here,虽然上次我测试它时,由于某些缺失/未定义的类型,它没有用G ++编译。
提前致谢, 泰森
答案 0 :(得分:2)
我还没有看到这样的端口,但您可能想等待即将推出的Symbian Foundation平台版本,其中大部分操作系统(包括描述符)都是在EPL许可下打开的。
答案 1 :(得分:2)
这里有几点需要考虑:
基本描述符API是在10多年前编写的,用于响应一组特定的资源约束。虽然他们肯定使Symbian OS C ++成为今天的品种,但在最新的操作系统上移植它们的理由必须充其量才能引起争议。
Symbian(好吧,诺基亚现在)实际上至少有一项涉及描述符的专利。你可能想要在描述源代码开源之前确切地询问它应该发生什么,然后再花费太多时间来处理它。
Symbian生态系统实际上一直在努力完全摆脱描述符一段时间。在OpenC / C ++,QT和新的EUserHL库之间,有非常可行的C ++替代描述符。
Symbian开发人员库中的描述符文档实际上相当不错,您绝对可以将其用作另一个操作系统的洁净室端口的基础。不过,对于大多数开发人员会积极尝试避免的事情来说,这是相当多的工作。
请记住,完整的descritpor API依赖于各种Symbian C ++习语,如CBase,CCleanupStack,TReal ...一个合适的端口肯定需要大量的工作。当然,离开机制可以用标准的C ++例外实现(因为这是Symbian离开中断时所做的事情),但仍然......
答案 2 :(得分:1)
对于描述符没有任何固有的特定于平台的特性,一旦开源,您就可以轻松地将它们(即重新编译它们)移植到Symbian源的另一个平台上。但是,由于某些描述符函数“离开”,您还必须引入Symbian清理堆栈功能。
由于这些是Symbian C ++中最糟糕的(即大多数非标准和广泛讨厌的),我很好奇你为什么要这样做?