蒟蒻的代码规范与文档编写规范
代码规范
- 代码每行不得超过 80 个字符。
- 代码不分块、连续编写,且每一个模块不允许超过 100 行。
- 双目运算符运算对象与运算符之间一定要分别打一个空格,单目运算符与运算对象之间不打空格。
- 禁止使用 Tab 缩进,使用 2 空格缩进代码。
- 宏定义时没有缩进。
- 基本使用 Java 代码风格,如果在
for
、if
后只有一两个语句,尽量不使用大括号包围,如果一定要使用大括号,则尽量压行书写。 - 模块化的代码,提倡代码宽而短,不提倡瘦长的代码风格。
- 没有通用的头文件,随用随加。
- 尽量开局部变量,减少全局变量的使用。
- 大块的内存空间随用随开,用完后立即释放,并且设置为空指针。
- 尽量使用指针书写代码,以便提高代码执行效率和可读性。
- 除递归调用的所有其它函数都使用
inline
以加快执行效率。 - 所有函数参数如非必要,均使用传址或传指针的方式,以减小拷贝构造带来常数。且能够使用
const
修饰的均应使用const
进行修饰。 - 类型名的修饰符如取地址符、解指针符等采用较为随意的方式。如
node *foo
(指针指向的对象),node* &foo
(需要修改指针),node* foo
(指针本来的含义) 这三种写法都是可以的。以容易理解为前提(因为不同时期的代码风格不太一样,就只有这个地方一直统一不起来)。 - 所有的函数名尽量采用驼峰命名法,如
readIn()
。特别地,对于一些模板性的函数,则使用其较为广泛使用的名称,如SPFA
和Treap
。对于重写的一些库函数,则使用相应的命名方式。
文档格式
好好写文档就行了。排版什么的暂时由 Han.js
负责。但是在书写时注意以下几点:
- 正确使用中文全角标点符号。通常习惯使用
「
与」
来提高中文引号的辨识度,同时也常用分号来表示列表环境中各复句之间的关系。正确使用示例如下:
- 中学生学科竞赛主要包括信息学奥林匹克竞赛、信息学奥林匹克竞赛、信息学奥林匹克竞赛、信息学奥林匹克竞赛和信息学奥林匹克竞赛(我就是这个样,你来打我啊)。
- “你吃了吗?”,李四问张三。
- 我想对你说:“我真是太喜欢你了。”
- 「苟利国家生死以,岂因祸福避趋之!」
- 推荐题目:「LOJ #104 普通平衡树」
- 以下是这个算法的基本流程:
- 第一步,初始化到各点的距离为无穷大,将所有点设置为未被访问过,初始化队列;
- 第二步,将起点放入队列,将起点设置为已被访问过,更新到起点的距离为 \(0\);
- 第三步,取出队首元素,将该元素设置为未被访问过;
- 第四步,遍历所有与此元素相连的边,若到这个点存在更短的距离,则进行松弛操作;
- 第五步,若这个点未被访问过,则将这个点放入队列,且设置这个点为已经访问过;
- 第六步,回到第三步,直到队列为空。
- LaTeX 定义好了的常量与函数名直接用。所有的函数名、常量均应使用 Roman 体。
- 如果遇到没有预先定义好的需要使用 Roman 体的函数名,我们可以使用
\operatorname{something}
来产生,如我们可以使用:
产生正体的最小公倍数(函数)符号:\(\operatorname{lcm(1,\,2)}\)。产生 Roman 体的常量应用\operatorname{lcm}
\mathrm{}
;其他非数学内容,包括中文、英文、特殊符号等,一律使用\text{}
。 - 绝对不能滥用公式字体。
- 表示强调时请使用
**SOMETHING**
而非某级标题。 - 全角字符(汉字、假名、谚文等)与半角字符(英文字母、阿拉伯数字、公式)之间添加一个半角空格,特别地,对于半角字符前后出现全角标点的情况,不需要添加多余的半角空格。类似地,对于英文的半角标点,请在标点后添加一个半角空格。请参考下面的例子:
- 对于一元二次方程 \(ax^2+bx+c=0\),我们设 \(\Delta=b^2-4ac\) 为二次方程的判别式。若 \(\Delta\le0\),则说明方程有实数根。
- 我要把贡献者的 Pull Request 合并到 master 分支上了。
- B 站的 22 娘和 33 娘真是太萌了!
- The quick brown fox jumps over a lazy dog. I can eat glass, it doesn't hurt me.
- 所有用作序号的数字建议使用中文。
- 从不使用段首缩进这种操作。
- 所有用作序号的数字建议使用中文。
- LaTeX 的每个逗号后,都需要补上一个宽度为 0.25em 的空格
\,
。
测试一波 Han.jscss
内容群组类
段落、清单
好们论红,手却策下使住收否人人!大获及是告另子维持力本清长先阳不?社相此国学风中麽很解:治子上己施一见,有的是,用关快家所的字时情:品好居……朋里义四时,校叫洲;运细种!眼失妈母身古慢管用、上开家问不难成的装望麽年单代,操会人得?人人传在善美故全、推两少关心求,下看同目国往成气;一广机亲得飞先始们於观他使难以该因口发汽机人都领了过大广场不食收西物早社报子们看、卖像师对好情的神?在史评,来深放表观。还人的西路尽热程当人长质此中民龙证说念背生外,间今经气门此都!把相的公去底动!
头性空风後上他根;然任他在,社拉布会言了来石赛亲支……情拉术北然使来路请放数坐灯麽象成一画专雨,是我长无等爱五化客可杂有雨。
诗篇段落
只领不致中此因和之术黑顾同後到,
血妈人山历操发一我利终心没文了事问艺来
生能唱起语在,树来课他——
小中观给告北戏树意,人消歌受,生会影……
动他脑它利离府头始也
地址格式
王小明 啓
台湾 新北市板桥路十九段555号
20245
有序清单
- 一级清单项目
- 一级清单项目
- 二级清单项目
- 二级清单项目
- 三级清单项目
- 三级清单项目
- 一级清单项目
- 一级清单项目
无序清单
- 一级清单项目
- 一级清单项目
- 二级清单项目
- 二级清单项目
- 三级清单项目
- 三级清单项目
- 一级清单项目
- 一级清单项目
引用区块
如事时决行入同是我表统支乐了先年、人目也月老过人,断弟进石给了,服去孩没性就能。边年排不决广之例。长收满导无!
未使用段落元素的引用区块
时来数期没道反先美别所金企感企妈失对谈。
引用区块中的引用区块
洲此境眼……方空车形、四用厂出先作,管济所唱步取的成正候社取开取高,理景龙知子起配做心正道动。出令正或?家国前保严轻朋化下而府里、基之称失!等园华行……政生着曾,们然变不发甚故,些长小华从不代应头资?
以满伤都片复利反,尔麽生任常弟但岸过年在;院投工变爱世总甚?天其有爸个:後轻取,在克的山知中识高於过叫行出面不大开受个说自经公目,学们湾。合好巴地尽性士面最产张子新容得实:眼不日野一,克节上人党到有没,她果以的是到影的请自人长、表本究政快的且造的推色究听场广人形!深了叫!
图表内的引用区块
格式预处理文字区块
国写亲下二好湾整机生土、是看老排让和保艺车市。 Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et me. 是除学图宝济候收。们性者位远另象内未院清外了以共…… 长明期事生合了中文新等麽科出过能意等件教求加, 楼日里大下果个来。 球者们?方绿电後,果或错老际声可特少保期全动带东北建,似保助先走她合也的。神我兴治的保保学果车易麽连学水小西一!而视可些化。
代码区块
void (function(a,b){var c=b.documentElement,d,e;function D(a,d) {d=a*d/100+b.getElementById("main").textContent;return d;}return new D(20,5);})(window||this,window.document);
章节类
文章区块元素
文章区块内的段落、清单
务用界种设是自水教台保再计见所湾们民各、外超是人外每方後发他济中;义生了出这失究式回值气苦我花声位香还场、外国的医门!
诗篇段落
只领不致中此因和之术黑顾同後到,
血妈人山历操发一我利终心没文了事问艺来
生能唱起语在,树来课他——
小中观给告北戏树意,人消歌受,生会影……
动他脑它利离府头始也
清单
- 清单项目子
- 清单项目丑
文章区块内的重点
不做则中心与的说很笔分士:校此诉平是里春家善客总外公;做南多中。足酒脸理特指第常三紧资现工们家化民,公政我热良,中以家是。
文章区块内的图表引用区块
文章区块内的变音文字
来化相据取爱统单商商半是否,的妈没种试此助来精人是湾,价种下落有,机信际,作假湾,心行程官这是运价车年都人强国农:特行解金产拉口……
文章内的引用区块
火说定好就用树,表母微时艺出北亲双表人事为放爸车奇列长农时教产得地何高的举度们她李力内体古见业选一香音种。
务用界种设是自水教台保再计见所湾们民各、外超是人外每方後发他济中;义生了出这失究式回值气苦我花声位香还场、外国的医门!
文章内引用区块中的引用区块
洲此境眼……方空车形、四用厂出先作,管济所唱步取的成正候社取开取高,理景龙知子起配做心正道动。出令正或?家国前保严轻朋化下而府里、基之称失!等园华行……政生着曾,们然变不发甚故,些长小华从不代应头资?
以满伤都片复利反,尔麽生任常弟但岸过年在;院投工变爱世总甚?天其有爸个:後轻取,在克的山知中识高於过叫行出面不大开受个说自经公目,学们湾。合好巴地尽性士面最产张子新容得实:眼不日野一,克节上人党到有没,她果以的是到影的请自人长、表本究政快的且造的推色究听场广人形!深了叫!
文章引用区块内的重点
不做则中心与的说很笔分士:校此诉平是里春家善客总外公;做南多中。足酒脸理特指第常三紧资现工们家化民,公政我热良,中以家是。
文章引用区块内的变音文字
来化相据取爱统单商商半是否,的妈没种试此助来精人是湾,价种下落有,机信际,作假湾,心行程官这是运价车年都人强国农:特行解金产拉口……
字级语意类
超连结元素a示例注记元素u示例
注记元素甲注记元素乙一般文字节点注记元素丙一般文字节点注记元素丁。
来源元素cite示例
重点元素strong示例
术语元素dfn示例
关键字元素b示例
强调元素em示例
变音文字元素i示例
变数元素var示例
引用元素q及子引用q元素示例
代码元素code
示例输入键元素kbd示例
计算机输出示例元素samp示例
行间注元素示例
复合式
直角
其他
缩写元素abbr及包含标题属性的缩写元素abbr示例凸显元素mark示例
批注元素small示例
文字范围元素span示例
下标元素sub示例
上标元素sup示例
修订类
增订元素ins示例增订元素甲增订元素乙一般文字节点增订元素丙一般文字节点增订元素丁。
特殊排版功能
汉字西文混排间隙
然而在Jan Tschichold和他的着作Asymmetric Typography流行之前,直至追溯回Gutenberg时代,「对称」「齐整」两种古老的视觉审美习惯无处不在。左右并齐的纵栏——我也欣赏这样的传统,一如欣赏古典格律的稳定及优美。
地区变体字型及标点符号样式
注:此处仅展示黑体,其馀字体样式请参阅其他测试页。
旧字形及推荐标点样式
字。字.字,字、字;字:字?字!
「内『内容』容」‘内“内容”容’
《書名》〈篇名〉(内容)
啊——什麼内容……丹·布朗
He — who wants to achieve the goal — denied about the fact that…
1991-1999年 他/她
台湾教育部式
字。字.字,字、字;字:字?字!
「内『内容』容」‘内“内容”容’
《书名》〈篇名〉(内容)
啊——什麽内容……丹·布朗
He — who wants to achieve the goal — denied about the fact that…
1991-1999年 他/她
中国国标式
字。字.字,字、字;字:字?字!
「内『内容』容」‘内“内容”容’
《书名》〈篇名〉(内容)
啊——什么内容……丹·布朗
He — who wants to achieve the goal — denied about the fact that…
1991-1999年 他/她
入 声 韵
aeioua̍e̍i̍o̍u̍
ㆴㆵㆶㆷㆴ͘ㆵ͘ㆶ͘ㆷ͘