美文网首页程序员
Bug天敌:代码风格规范

Bug天敌:代码风格规范

作者: 信息学小屋 | 来源:发表于2020-05-06 23:31 被阅读0次

    俗话说:“字如其人。”,我说:“代码如其人。”

    养成规范的代码风格,可以有效地减少bug的产生,提高阅读程序的效率,使程序更易被理解。
    在开发当中,代码风格是一名程序员基本功力的体现,可以说是非常重要的。
    在竞赛当中,整齐的代码可以缓解环境带来的压力,更易发现其中的逻辑错误,是提高成绩的有效方法。
    参考了Menci学长的博客,综合我的编程经历,总结出一下代码规范。

    概览

    • 头文件("include")应放在程序的最开头,能使用 “<>” 包含的,一律使用 “<>” 包含,其他才情况使用双引号。

    • "include" 和具体头文件之间应有一个空格。

    • 不要使用 "using namespace std;" 。

    • 不要定义宏,使用 "const" 或 “typedef” 代替。

    • 统一使用一个Tab或四个空格进行缩进。

    函数

    • 所有函数均需要正确返回值,不能用 "int" 来代替 "void" 或其他类型。

    • 函数名后应加一个空格,再接参数。

    • 大括号应与函数名在同一行,同时与函数的参数有一个空格。

    • 调用函数时,多个参数应用一个空格隔开。

    举个栗子:

    void func (int i, int j) {
        //something
    }
    

    空格(空行)

    • 等号、加号、减号等各种符号左右应各有一个空格。

    • 一行有多个并列语句时,应用空格隔开。

    • 头文件,变量定义,函数的各个块之间应有一个空行隔开。

    • 一个函数中实现不同内容时也应有一个空行隔开

    举个栗子:

    #include <iostream>
    #include <cstdlib>
    
    const int N = 1e5 + 5;
    int n, m, k;
    
    int func (int i, int j) {
        //something
    }
    
    int main () {
        cin >>n >>m >>k;
        
        for (int i = 1; i <= n; ++i) {
            //something
        }
        
        int ans = max(n, m, k);
        cout <<ans <<endl;
        
    return 0;
    

    变量

    • 循环变量使用 i, j, k, p, q 等。

    • 禁止使用全局变量。

    • 不直接使用常数,应将其定义为常量。

    • 常量命名为大写英文缩写。

    • 变量命名不能重复(函数内外也不行)。

    • 变量用小写英文缩写命名。

    • 指针变量与引用变量中的 “*” 和 “&” 应靠近类型名称,不能靠近变量名。

    面向对象

    (这点仅针对开发编程)

    • 只能使用 “class”,而不能使用 “struct”。

    • “class” 中的 public 类型应放在最前面。

    • “class” 中的变量只能是 private 或 protected 类型,可以设有更改和查询变量的函数,但查询函数要有 “const” 修饰。

    【信息学竞赛从入门到巅峰】,一个专注于分享OI/ACM常用算法及知识的公众号。

    相关文章

      网友评论

        本文标题:Bug天敌:代码风格规范

        本文链接:https://www.haomeiwen.com/subject/jmjnghtx.html