- 1、本文档共13页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
TOC\o1-3\h\z\uQt编程设计规范 1
一.概述 1
二.头文件 1
1)#define保护 2
2)头文件依赖 2
3)头文件包含次序 2
三.命名约定 2
1)通用命名约定 2
2)文件命名 3
3)类命名 3
4)变量命名 3
5)常量命名 4
6)函数命名 4
7)枚举命名 5
8)命名空间 5
9)结构体命名 6
四.代码注释 6
1)注释风格 6
2)类注释 7
3)函数注释 7
4)变量注释 8
5)实现注释 8
6)TODO注释 9
五.代码排版 10
1)行长度 10
2)缩进 10
3)空行 11
4)大括号 11
5)圆括号 13
六.重要原则 13
Qt编程设计规范
一.概述
良好的编程规范可以大幅提高一个程序的可读性、可理解性和可维护性。
本规范参考EffectiveC++中文版、GoogleC++编码规范及Qt编码风格。
二.头文件
1)#define保护
所有头文件都应该使用#define防止头文件被多重包含,命名格式为:ProjectName_FileName_H,例如:
#ifndefMAP_MAINWINDOW_H
#defineMAP_MAINWINDOW_H
……
#endif//MAP_MAINWINDOW_H
2)头文件依赖
使用前声明,尽量减少.h文件中#include的数量。
3)头文件包含次序
将包含次序标准化可增强可读性,次序如下:C库头文件、C++库头文件、其他库的头文件、项目内的头文件。
三.命名约定
1)通用命名约定
避免使用缩写。
2)文件命名
文件名全部小写,可以包含下划线,例如:
my_test_class.h
my_test_class.cpp
mytestclass.h
mytestclass.cpp
3)类命名
类名是名词,每个单词以大写字母开头,不包含下划线,且名前加大写字母C,例如:
CMySystemWatcher
CClockBattery
4)变量命名
变量名是名词,首单词以小写字母开头,后续单词以大写字母开头。每行一个变量,单字符的变量只在临时变量或循环计数中使用。
类成员变量需在变量名前加m_前缀,例如:
intm_myValue;
局部变量等到需要使用时再定义变量,且定义时必须初始化,整数用0,实数用0.0,指针用NULL,字符(串)用\0。例如:
intmyValue=0;
尽量不要使用全局变量,以降低耦合。若使用能带来极大便利,命名时需在变量前加g_前缀,例如:
intg_myValue;
5)常量命名
常量不含前缀且应该大写,单词间有下划线,包括全局常量和宏定义,例如:
constintMY_VALUE=0;
#defineMY_VALUE0
6)函数命名
函数名是动词或含有动词的短语,首单词以小写字母开头,后续单词以大写字母开头,例如:
intgetMyValue();
intsetMyeValue(intvalue)
函数参数所有字母小写,单词间有下划线,若为非基本数据类型,使用const引用,例如:
setColor(constQColornew_color)
7)枚举命名
枚举名和枚举值都是名词,每个单词以大写字母开头,且第一个单词是Enum,例如:
enumEnumMyColor?//枚举名
{
EnumWhite,????//枚举值
EnumBlack
};
8)命名空间
命名空间的名称是名词,每个单词以大写字母开头,且前两个单词是BaiDi,例如:
namespaceBaoDiProject{}
9)结构体命名
结构体中只定义变量,不定义函数。
结构体名是名词,每个单词以大写字母开头。
结构体成员名词,首单词以小写字母开头,后续单词以大写字母开头。例如:
structMyColor
{
???boolisMyColor;
???intwhite;
};
四.代码注释
1)注释风格
使用//或/**/,统一就行。一般情况下,源程序有效注释量必须在20%以上,不易理解的地方都需加上注释,注释不宜太多也不能太少。
2)类注释
类的头文件顶部需添加说明性注释,包括版权说明、版本号、作者、生成日期、类的功能描述等。
/*****************************************************
**Copyright(C),2015-2025,BaodiTechnology.
**Version:
**Author:??????????
您可能关注的文档
- 教学能力大赛教案模板(一).docx
- 教学能力大赛教案模板(一).pdf
- 机器人与智能制造技术(PPT 59页).pptx
- 人工智能概论-智能制造.pptx
- 小型污水处理电气工程技术培训课件.pptx
- 第三方服务商安全生产协议.docx
- 第三方服务商安全生产协议.pdf
- 2022尿毒症合并股骨颈骨折的护理查房ppt.pptx
- 完整《乡村振兴责任制实施办法》PPT.pptx
- 空气呼吸器培训-PPT课件.ppt
- 人教版数学五年级下册期末测试卷附完整答案【精选题】.docx
- 人教版数学五年级下册期末测试卷附参考答案(实用).docx
- 人教版数学五年级下册期末测试卷附参考答案【满分必刷】.docx
- 人教版数学五年级下册期末测试卷附参考答案【轻巧夺冠】.docx
- 人教版数学五年级下册期末测试卷精品【基础题】.docx
- 人教版数学四年级上册期末测试卷附答案【基础题】.docx
- 环保公益项目的策划和实施-大学生环保行动.pptx
- 人教版数学四年级上册期末测试卷精品(考点梳理).docx
- 2025中考物理三轮高频易错点专练--07质量与密度(答案+解析).docx
- 教育学基础知识分享-教育学基础知识分享.pptx
最近下载
- 课题申报参考:AIGC视域下高校网络舆情传播风险矩阵与治理进路研究.docx VIP
- 数智视域下高校网络舆情的特征、困境及引导方略.docx VIP
- 智能汽车传感器技术 随堂测验试题及答案 项目1 智能网联汽车及传感器认知.pdf VIP
- 西门子变频器SINAMICS 完美无谐波GH180 6SR4502空冷型变频器操作说明.docx
- 离职公积金销户承诺书.docx
- 三菱变频器D700使用手册(应用篇).pdf
- thetheoryandpracticeoftranslation奈达的翻译理论与实践.pdf
- 水湘圩地区成矿规律研究及成矿预测报告.docx VIP
- 2021年满来梁煤矿瓦斯爆炸应急演练脚本.docx
- 三年级下册科学3、3影子的秘密-实验报告单(教科版).docx
文档评论(0)