我即将编写一个C ++库,供Windows应用程序和Symbian使用。 Linux不是当前的要求,但通常也应该是可行的
出于这个原因,我想使用STL / Boost命名约定而不是Symbian's,我认为这很难习惯。
当使用Carbide.c ++编译代码时,这似乎已经存在问题,因为它强制执行Symbian命名约定。
如何使用“普通”名称并仍然兼容Symbian?
我首先想到有条件地重新使用#define
- 用于Symbian平台的类名,但我担心这会导致混淆。
不遵守Symbian的命名约定会不会出现其他问题?
答案 0 :(得分:4)
编码约定并不严格。它们是为了让人类更容易理解代码。如果您正在编写一个多平台库,请随意使用您认为合适的约定。
当然,您的库可能需要以某种方式与底层操作系统进行交互。在Open C/C++ libraries的帮助下,您可以执行许多操作,而无需使用本机Symbian C ++ API及其命名约定。
在Carbide.c ++中,您可能希望禁用CodeScanner静态分析,因为它实际上只对用本机Symbian C ++编写的代码有用。
总而言之,问题如下: