导图社区 c编程规范
C++既可以进行C语言的过程化程序设计,又可以进行以抽象数据类型为特点的基于对象的程序设计,还可以进行以继承和多态为特点的面向对象的程序设计。C++擅长面向对象程序设计的同时,还可以进行基于过程的程序设计。
社区模板帮助中心,点此进入>>
互联网9大思维
组织架构-单商户商城webAPP 思维导图。
域控上线
python思维导图
css
CSS
计算机操作系统思维导图
计算机组成原理
IMX6UL(A7)
考试学情分析系统
c++编程规范
严禁在断言内改变运行环境
程序正式发布时,断言并不会被编译 使用进去,所以禁止在断言中使用任何赋值,修改变量,资源操作和内存申请等操作
断言应只判断一个条件
多重条件的时候应该分开
不要对公共接口API函数的参数进行assert操作
对api函数的参数进行assert没有意义,应该使用if else来隔离判断
字符串或指针作为函数参数时,应该检查其是否为NULL/nullptr
要么使用assert确认其是否weikong,要么使用if else判断
禁用c++异常机制
所有的错误都应该通过错误直在函数之间传递并做相应的判断,而不应该通过异常机制进行错误处理(如用try catch)
在接管c++语言本身抛出的异常(如new失败,stl错误),第三方库抛出异常时,可以使用异常机制
不要在构造函数中创建线程
构造函数仅完成成员变量的初始化工作,其他的操作通过成员函数完成
其他初始化操作增加init()接口完成
如果类的公共接口返回类的私有数据地址,必须为const类型
可以改变则应增加额外的接口,如mutable_变量名
禁用pthread_exit,ExitThread函数,禁用exit,exitProcess函数
不要在线程内主动终止自身现存,线程函数执行完毕后应自动,安全退出
主动终止自身线程,不仅代码复用性变差,也会导致资源泄漏错误
除了main,禁止在任何地方推出进程
程序英国通过错误值传递的机制进行错误处理
禁用abort()函数
调用格式化函数时,禁止format参数外部可控
printf("\n", msg)