[讨论] switch大家怎么排版?

楼主: freeman371 (自由人371)   2023-11-27 19:16:09
很多程式语言都有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
#1ZdgwAbM (Soft_Job) 我有问过XDDDDD
作者: accessdenied (存取违规)   2023-11-27 19:44: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:00
case麻烦也括号
作者: yamakazi (大安吴彦祖)   2023-11-27 22:29:00
clang-format就好,时间花在开发上面才划算
作者: abc21086999 (呵呵)   2023-11-27 22:37:00
python 有这个ㄇ
作者: yamakazi (大安吴彦祖)   2023-11-27 22:45:00
clang format 会自动帮你排版,存盘的时候自动排好
作者: viper9709 (阿达)   2023-11-27 22:50:00
个人习惯1~3也可以
作者: kurtsgm   2023-11-27 23:05:00
老问题 问就是 1. 依照公司规定 2. 依照不同语言惯例
作者: OriginStar   2023-11-27 23:08:00
我个人喜欢对称排版,而且每个 case 都有 { },视觉上比较符合我的喜好,可以一眼就可以看初阶层
作者: t64141 (榕树)   2023-11-27 23:14:00
公司用的 IDE 或相关工具自动排版,不用花时间人工校对这种东西
作者: abccbaandy (敏)   2023-11-27 23:48:00
用IDE默认最好
作者: NDark (溺于黑暗)   2023-11-27 23:49:00
同楼上 有规则的公司请入职安装IDE的时候一并把排版装好如果没装就照默认
作者: j0958322080 (Tidus)   2023-11-27 23:59:00
python 在 3.10 后加入了
作者: sharek (...)   2023-11-28 06:46:00
用ide或lint 规则设一设,公司有统一就好
作者: ctrlbreak   2023-11-28 06:52:00
一律用自动的, 多人专案就设定同一规则, 不然档案比对会一团乱XD
作者: andy0055 (王昆)   2023-11-28 08:16:00
IDE 默认就好+1你们部门应该大家都用相同IDE 吧?
作者: lturtsamuel (港都都教授)   2023-11-28 08:54:00
问linter啊问我干嘛
作者: 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:00
IDE帮排完版 根本没在注意
作者: sniper2824 (月夜)   2023-11-28 12:24:00
看语言看公司
作者: asdfghjklasd (好累的大一生活)   2023-11-28 12:30:00
我都叫马力欧自己排
作者: longlongint (华哥尔)   2023-11-28 12:51:00
请到NSwitch专版发文(欸不是不重要 VS 直接F1 format this document
作者: walinama (奶油)   2023-11-28 13:16:00
1
作者: shvanta (vant)   2023-11-28 13:27:00
PHP语言的话,PSR-12有规定https://www.php-fig.org/psr/psr-12/#52-switch-case但现代的IDE都直接帮你处理好了,理论上不知道也没关系
作者: 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
作者: pp129908 (阿兔)   2023-11-28 19:53:00
ctrl + alt + o
作者: TAKADO (朕没给的你不能抢)   2023-11-28 20:05:00
IDE大部分默认都会排成1的样子
作者: pot1234 (锅子)   2023-11-28 21:47:00
3
作者: jack42107 (小克)   2023-11-28 23:27:00
照语言惯例啊 每个语言不见得一样
作者: ZakuSIN (SIN)   2023-11-29 00:56:00
直接用IDE排版处理掉 就这样
作者: shownlin (哈哈阿喔)   2023-11-29 02:18:00
我都照 Linux kernel coding stylehttps://www.kernel.org/doc/html/latest/process/coding-style.htmlhttps://reurl.cc/x6rXr5就是case跟switch align
作者: Dracarys (MayShowGunMore)   2023-11-29 02:22:00
3
作者: hermithsieh (hermit)   2023-11-29 07:07:00
我觉得程式能跑就好…
作者: jakert123 (kaka3315)   2023-11-29 10:56:00
不要写switch好吗
作者: jobintan (Robin Artemstein)   2023-11-29 13:11:00
不然是要写if...else if...else if...这样吗?
作者: shooter555 (shooter)   2023-11-29 13:52:00
case 内大括号个人觉得丑 通常太多都直接再拆function不过基本上就是跟着project的风格走 怎么订怎么写要不然一人一种风格 整个更丑
作者: seedli (带骨的火腿)   2023-11-29 13:54:00
用统一coding style的formatter就好啦,烦恼这个干嘛
作者: ck237 (白色小鸡)   2023-11-29 17:39:00
自动排版 +1,烦恼这个干嘛
作者: qpowjohn (pose)   2023-11-29 18:37:00
依循团队习惯
作者: notimenofree (逼逼逼逼逼)   2023-11-30 00:55:00
switch排版没差吧…
作者: 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
照公司规定
作者: mrgyt1030 (Young)   2023-12-01 23:05:00
真爽 有时间烦恼这问题
作者: forewero (木日一)   2023-12-02 14:02:00
我都改用map/dictionary, switch臭臭
作者: newking761 (J三小)   2023-12-04 11:48:00
主要是看review的人会不会靠腰,不会就随便
作者: superpandal   2023-12-04 21:43:00
我写1 但是通常看很多c的project会写3
作者: hooll111 (Katsudon)   2023-12-10 17:34:00
用if代替

Links booklink

Contact Us: admin [ a t ] ucptt.com