很多程式语言都有switch这个语法
例如:C、Java、PHP、JavaScript等
我时常用到switch都会有个犹疑
就是switch到底该怎么排版好呢?
通常程式工程师在写程式时
在大括号之内的程式会比括号外的增加一个tab(或多个空格)
其他则在同一层
但是今天的switch语法有个case
到底case到底要不要再增加个tab?
也就是像这样:
switch(…){
case …:
…..;
break;
…..
}
因为case在switch的大括号当中
习惯上大括号里的程式会多一个tab
不过case底下又有类似其副程式的程式
那case里的程式是否又要再多一层tab?(不过case不是大括号刮住)
这样就变成switch里面一定有两层以上的排版
大家都是怎么写switch语法的排版?
以下有三种排版方式:
1)
switch(…){
case …:
…..;
break;
…..
}
2)
switch(…){
case …:
…..;
break;
…..
}
3)
switch(…){
case …:
…..;
break;
…..
}
作者:
k300plus (300plus)
2023-11-27 19:42:00杀洨菜逼八问题...自己觉得怎样不会眼花就怎样好。个人习惯(1)
作者: ha878787 (==) 2023-11-27 19:49:00
1
作者:
Lhmstu (lhmstu)
2023-11-27 20:21:00不重要,看公司要什么排版我就 写什么
作者: guest8080 2023-11-27 21:42:00
1然后case也加大括号
作者:
chuegou (chuegou)
2023-11-27 22:08:00case麻烦也括号
作者:
yamakazi (大安吴彦祖)
2023-11-27 22:29:00clang-format就好,时间花在开发上面才划算
作者:
yamakazi (大安吴彦祖)
2023-11-27 22:45:00clang format 会自动帮你排版,存盘的时候自动排好
老问题 问就是 1. 依照公司规定 2. 依照不同语言惯例
我个人喜欢对称排版,而且每个 case 都有 { },视觉上比较符合我的喜好,可以一眼就可以看初阶层
作者: t64141 (榕树) 2023-11-27 23:14:00
公司用的 IDE 或相关工具自动排版,不用花时间人工校对这种东西
作者:
NDark (溺于黑暗)
2023-11-27 23:49:00同楼上 有规则的公司请入职安装IDE的时候一并把排版装好如果没装就照默认
作者:
sharek (...)
2023-11-28 06:46:00用ide或lint 规则设一设,公司有统一就好
作者: ctrlbreak 2023-11-28 06:52:00
一律用自动的, 多人专案就设定同一规则, 不然档案比对会一团乱XD
IDE 默认就好+1你们部门应该大家都用相同IDE 吧?
作者:
kyoe (缘份‧不再)
2023-11-28 09:02:00){ 中间可以空格吗? ) {
作者:
jobintan (Robin Artemstein)
2023-11-28 11:05:00除非公司有特别规定否则VSCode默认的就好别自找麻烦……
作者:
srwhite (鲁蛇阿白)
2023-11-28 11:22:00好久没有手动排版了
作者:
bill0205 (善良的小孩没人爱)
2023-11-28 11:58:00IDE帮排完版 根本没在注意
作者: longlongint (华哥尔) 2023-11-28 12:51:00
请到NSwitch专版发文(欸不是不重要 VS 直接F1 format this document
作者:
shvanta (vant)
2023-11-28 13:27:00作者:
acgotaku (otaku)
2023-11-28 13:46:00组内规定怎么用就怎么用 没规定就自己开心顺眼
作者: AbyssBoys 2023-11-28 16:11:00
IDE协助排
作者:
seanwu (海恩)
2023-11-28 17:45:00常常明明就没歪,还是想要手贱按一下gg=G或Alt-Shift-F..
作者:
ma721 (UndeadJ)
2023-11-28 18:03:00几乎没在用switch
作者:
TAKADO (朕没给的你不能抢)
2023-11-28 20:05:00IDE大部分默认都会排成1的样子
作者:
pot1234 (锅子)
2023-11-28 21:47:003
作者:
ZakuSIN (SIN)
2023-11-29 00:56:00直接用IDE排版处理掉 就这样
作者:
Dracarys (MayShowGunMore)
2023-11-29 02:22:003
作者:
jobintan (Robin Artemstein)
2023-11-29 13:11:00不然是要写if...else if...else if...这样吗?
case 内大括号个人觉得丑 通常太多都直接再拆function不过基本上就是跟着project的风格走 怎么订怎么写要不然一人一种风格 整个更丑
作者:
seedli (带骨的火腿)
2023-11-29 13:54:00用统一coding style的formatter就好啦,烦恼这个干嘛
作者:
ck237 (白色小鸡)
2023-11-29 17:39:00自动排版 +1,烦恼这个干嘛
作者:
Litfal (Litfal)
2023-11-30 01:54:00可以不要用switch,用switch拜托简单明了,不加大括号
作者:
zxzx8059 (zxzx8059)
2023-11-30 08:47:00预过编译器处理case有没有大括号行为不一样…
作者:
ssccg (23)
2023-11-30 14:22:00专案有规定照专案,没规定IDE/编辑器默认的排下去不用想这么多
作者: JoaoWang 2023-12-01 00:50:00
都照公司
作者:
una283 (无)
2023-12-01 07:24:00照公司规定
我都改用map/dictionary, switch臭臭
作者: superpandal 2023-12-04 21:43:00
我写1 但是通常看很多c的project会写3
作者:
hooll111 (Katsudon)
2023-12-10 17:34:00用if代替