My Code Style

受到 @_slb 大佬的启发,~~(趁着集训休假开摆)~~也打算写一篇关于自己码风的文章 QwQ。

自认为自己码风很好

头文件

万能头忠实拥护者,纵使它在变量名上虐我千百遍,我仍然要坚定地使用它!

变量

数组一律开全局变量,函数中要用到的变量一律开全局变量,一些没啥用的打酱油的变量比如 opt 一般会放在主函数里。

换行

  • 头文件和 using namespace std; 在一起,换行空一行写全局变量

  • 不同类型的全局变量之间不空行

  • 函数之间空一行

  • 大括号换行

  • 对于 q.front()q,pop() 连起来的操作,不换行

#include
using namespace std;

const int maxn=1e5+5;
int head[maxn],n;
bool flag;

void add(int x,int y)
{
}

bool check
{
}

空格

  • 运算符之间从来不加空格,唯一的例外是 priority_queue,greater > q

  • 分号前后不会加空格

压行

轻微的压行主义者。

  • 对于 for,能删的括号都尽量删
  • 对于 if,大部分时候会把条件和执行语句放在一行
  • 对于一个执行语句和 returnbreakcoutinue 连在一起时,如果有且只有这两句话,会写在一行
  • 不会写 return q.push(x),x+1; 这样奇奇怪怪的压行小寄巧

举个栗子:

for(int i=1;i<=n;i++)
    for(int j=1;j<=m;j++)
        cin>>a[i][j];

if(!flag) f[i]=f[i-1];

if(flag) {f[i]=f[i+1];break;}

其他

  • void 可能不爱写 return
  • return 0; 爱好者
  • 喜欢 #define int long long,不太喜欢一会儿 long long 一会儿 int
  • 数组一般开到最大值 + 5 +5 +5
  • 任何变量名都尽量和题干一致
  • 不爱用任何大写,除非题里的变量名用大写
  • cincout 忠实粉丝,例外是字符数组读入会用 scanf、很长的变量和字符串混搭的输出会用 printf 之外
  • 不太喜欢写快读,遇到毒瘤卡常一般喜欢关闭同步流解除捆绑
  • 链前喜欢拿数组写,线段树喜欢拿数组写

持续更新中……

upd on 2023/2/6:跟风把 title 改了

你可能感兴趣的:(其他,程序人生)