Virtools的VSL和SDK编程编码规则

2026/1/27 19:42:05

2.8 公共变量

对公共变量(全局变量)的要求。

2.8.1 严格限制公共变量的使用

规范级别:建议 规则描述:

在程序中要尽可能少的使用公共变量。在决定使用一个公共变量时,要仔细考虑,权衡得失。 理由:

公共变量会增大模块间的耦合。 2.8.2 明确公共变量的定义

规范级别:规则 规则描述:

当你真的决定使用公共变量时,要仔细定义并明确公共变量的含义、作用、取值范

围、与其它变量间的关系。明确公共变量与操作此公共变量的函数之间的关系,如访问、修改和创建等。

2.8.3防止公共变量与局部变量重名 规范级别:规则

规则描述:防止公共变量与局部变量重名。

2.9 其它

下面这几条要求,不适合合并到上面任何一类,所以单独作为一部分。 2.9.1 不要使用结构体

规范级别:建议

规则描述:在C++中,不要再使用struct。 理由:以符合面向对象的思想。 2.9.2 不要使用联合体

规范级别:建议

规则描述:在C++中,不要再使用union。 理由:

●由于union成员公用内存空间所以容易出错,并且维护困难; ●使用union通常意味着非面向对象的方法。 2.9.3 用常量代替宏

规范级别:规则

规则描述:使用const来定义常量,代替通过宏来定义常量的方法。 理由:在不损失效率的同时,使用const常量比宏更加安全。 举例:

//宏定义的方法

#define string \#define value 3

//常量定义的方法可以代替宏,且要更好 const char* string = \const int value = 3; 2.9.4 括号在宏中的使用

规范级别:规则

规则描述:对于宏的展开部分,在宏的参数出现的地方要加括号“()”。 理由:保证宏替换的安全,同时提高代码的可读性。 举例:

// 不要这样写

#define GET_NAME(obj,ind) obj->name[ind] // 应该这样写

#define GET_NAME(obj,ind) (obj)->name[ind]

2.9.5 尽量使用C++风格的类型转换

该规则参考自《More Effective C++》中的条款2。

规范级别:建议 规则描述:

用C++提供的类型转换操作符(static_cast,const_cast, dynamic_cast和reinterdivt_cast)代替C风格的类型转换符。 理由:C风格的类型转换符有两个缺点:

1 允许你在任何类型之间进行转换,即使在这些类型之间存在着巨大的不同。 2 在程序语句中难以识别。 2.9.6 将不再使用的代码删掉

规范级别:规则

规则描述:将程序中不再用到的、注释掉的代码及时清除掉。 理由:

理由不用做太多的解释了吧?没有用的东西就应该清理掉。如果觉得这些代码你可能以后会用到,可以备份到其它地方,而不要留在正式的版本里。


Virtools的VSL和SDK编程编码规则.doc 将本文的Word文档下载到电脑
搜索更多关于: Virtools的VSL和SDK编程编码规则 的文档
相关推荐
相关阅读
× 游客快捷下载通道(下载后可以自由复制和排版)

下载本文档需要支付 10

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219