@johanvx 还行吧,我个人对变量,函数等命名还都是能接受的,就是对编码规范还是有点要求的。确实还没见到其他关于代码规范的帖子。
SkyWingF
@SkyWingF
-
MC++编码风格探讨 - 标识符命名风格 -
MC++编码风格探讨 - 标识符命名风格模板类尽量实例化常用的类型,以便减少编译时间;
模板类或模板函数尽量限制能传入的参数类型,本质上模板做的就是函数重载的事;
如果是某些数据转换或者方便后期维护,尽量还是用命名空间内的内联函数定义或尽量在编码早期就确定下来,少使用魔法宏......对于#define WINAPI __stdcall, #define TRY try{, #define END_TRY }, #define MAX(...) ......,还是比较痛恨的;
如果不兼容以前版本的c++,尽量不要对关键字使用宏(毕竟c++或者c来说对于关键字的更改基本都很少);
函数尽量加上属性一类的定义比如[[nodiscard]], [[deprecated]]等; -
MC++编码风格探讨 - 标识符命名风格对于编码风格比如类型别名统一用using关键字,除非导出C库使用typedef;
类型别名最好放在命名空间内,或者类作用域内或者函数内;
try catch别用或只用在程序的致命性问题,错误码和错误信息字符串还是广泛使用的;
函数传参尽量多使用引用,在语法层面解决访问野指针的问题,想要优化参数构造或返回值为类的对象一般就用右值引用;
在可以的情况下,类尽量都实现classname& operator=(右值引用){......};
类最好不要可以定义强制类型转换函数,还是函数更好理解一点;
类最好保留一个空实现的构造函数,或者只限于把所有的成员变量都初始化为0......;
对于类成员有指针并且明确申请堆内存的最好用智能指针,要么自行管理好生命周期;