Code Style of Mangata
本文用于介绍Mangata的代码书写习惯
概览
①所有的#include指令放在整个程序的最上面
②不应该使用using namespace std;
③main函数放在程序的末尾
④不应该用int代替bool的逻辑值
⑤main函数的返回类型是int并且main函数的末尾请务必return 0;
⑥main函数使用换行的花括号
缩进
对于每个代码块(大括号里面的内容),使用4空格或者等长的Tab缩进
花括号
花括号有两种写法,①花括号换行,②花括号不换行
①花括号换行: 左花括号必须和上一级块的缩进相同
②花括号不换行: 左花括号有且仅有一个空格
// 1
if (condition)
{}
else
{}
// 2
if (condition) {} else {}
行
①除了for中的三个语句外,每行不能超过一个语句。如果一行内有多个表达式,请使用逗号隔开
②连续空行数目不能大于1
③非空行尾不能有多余的空格
④函数、成员函数、结构体、全局变量块之间尽量用一个空行隔开
⑤程序末尾不能有多余的空行
⑥如果程序中有using namespace std; 请紧跟着最后一条#include书写
#include<cstdio>
#include<algorithm>
#include<cstring>
using namespace std;const int N = 10005;struct Node {int a;
};int a,b,c;
double t1,t2;int main()
{return 0;
}
函数
①main函数的返回类型必须是int,并且main函数的末尾必须返回return 0;
②空函数可以使用 {} (但是似乎很鸡肋?)
③传参的时候根据需要选择是否引用或者const,尽量少用指针(不是说不用)。
变量
①少用全局变量
②局部变量在使用的时候定义,并且局部变量名不能和上一个块的变量名重名,可以和全局变量重名
③只在一个函数内使用到的,但是生存周期在全局的,请使用static修饰
空格
①逗号 , 与for中的分号 ; 后面都要有一个空格,前面不能有空格
②左圆(方)括号后、右圆(方)括号前,在书写长表达式时,为了便于阅读,可以加一个空格,如
f[i][j] = f[ f[i][j - 1] ][j - 1]
③双目运算符、三目运算符的两侧必须有一个空格
④单目运算符的两侧不能有空格
⑤冒号的两侧必须有空格
三目运算符 a > b ? a : b;双目运算符 a == b单目运算符 !a
⑥流程控制关键字之后,左圆括号前必须有一个空格,函数名之后,左圆括号前不能有空格,while和do-while的左括号前也不能有空格。
⑦ .
、->
、::
的两边不能有空格。
命名
①常量请使用全大写,变量首字母小写,结构体首字母大写
②函数的命名可以用单词的缩写(实在没法你可以使用pinyin)
Code Style of Mangata相关推荐
- wyh 的 Code Style
参考GNAQ学长大人的Code Style Rust式代码风格: 预编译指令: 顺序: pragma include define undef 缩进: define undef 继承上层缩进,其余不缩 ...
- Indent tool and KR code style
为了使得我们写的code代码看上去更加工整美观,我们可以借助一些工作来完成这种技术含量低却耗时的工作,用的比较多的有Indent和Astyle. Indent工具可以指定某种style,例如K& ...
- c语言编程交党费,「二级C语言」Code Style(代码的风格)
某省情况插管疲软长发皓洁面临惯骗:发令魔术露齿临下纷扰乐道风习不迫?母亲黔江批答苦行龙头多数:奇丽马赛明理除痘妹子拼缀光导切点.曲水娄东算算初始潜江.两系善恶不妨曲波挡寒民居古币. 兰姆信物挂包森工例 ...
- Code Style Guidelines for Contributors Reading Notes
Reading Notes: 1.You must handle every Exception in your code in some principled way. (if you are co ...
- 使用阿里统一的code style规范你的代码格式
导入代码格式化样式 alibaba-codestyle.xml 安装eclipse-code-formatter File->Settings->Plugins,搜索Eclipse Cod ...
- Code Style Guide之正交设计浅析
前提:模块化设计 为什么需要模块化设计? 理论上可以只使用一个函数完成全部功能,但是太过复杂,超过人的掌控极限.因此必须要划分开,对问题进行分解.(面向过程->面向对象) 模块化设计遇到的两个问 ...
- 【IDEA使用技巧】使用阿里统一的code style规范你的代码格式
1.下载阿里eclipse-codestyle.xml:https://github.com/alibaba/p3c/tree/master/p3c-formatter 2.IDEA配置,导入xml: ...
- 转: The Code Commandments: Best Practices for Objective-C Coding (updated for ARC)
PrefaceI don't normally post highly technical stuff to my blog, but here's an exception that I hope ...
- The Code Commandments: Best Practices for OCCoding
2019独角兽企业重金招聘Python工程师标准>>> Preface I don't normally post highly technical stuff to my blog ...
最新文章
- 一个苹果证书供多台电脑开发使用——导出p12文件
- 两队选手每队5人进行一对一的比赛(算法)
- 刚开始学centos和Oracle
- 第一章 介绍-机器学习老师板书-斯坦福吴恩达教授
- 医学图像处理期末复习(三)
- Java最佳实践– Vector vs ArrayList vs HashSet
- nginx服务无法启动,启动时报错1067以外终止
- ipython怎么安装_ipython的两种安装方式
- 【HDU 5532 Almost Sorted Array】水题,模拟
- 方程组的直接解法和迭代法 python_最小二乘法及python 实现
- 中文信息处理—已分词标注语料的抽取词表和文本还原
- Emacs shutcuts
- html5总结2000字,建筑识图实训总结2000字6篇范文
- 前端html小技巧(css篇)—表单美化详解
- idea中的万能快捷键(alt + enter)
- 【评价模型】模糊综合评价法 _数学建模 续更
- 用互联网大脑模型分析滴滴的战略意图和战术失误
- C语言:关键字---struct(声明结构体类型)
- 海尔简爱s11装Linux,海尔简爱S11笔记本U盘安装win7系统的操作教程
- 如何进行安全可靠的API身份验证?
热门文章
- CVPR2021论文整理
- python : 自定义可迭代类,__iter__ ,__next__的作用
- SES 之全局搜索小记
- VS2017开发.net core 时默认发布路径文件夹多个BPC
- 爬虫入门【10】Pyspider框架简介及安装说明
- javascript 类的创建1
- winform 拖动无边框窗体(调用Windows API)
- JAVA 文件下载乱码问题解决办法
- 人工智能语音交互技术与应用
- zip压缩/tar打包