首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

为什么省略花括号被认为是一种不好的做法?

省略花括号被认为是一种不好的做法,主要原因是为了代码的可读性和可维护性。当一个程序员阅读代码时,花括号可以帮助他们更清晰地理解代码的结构和逻辑。如果省略花括号,可能会导致程序员在阅读代码时产生混淆,从而增加了理解代码的难度。此外,省略花括号也可能导致代码的可维护性降低,因为当需要修改代码时,可能会更容易出现错误。

总之,省略花括号被认为是一种不好的做法,因为它会降低代码的可读性和可维护性,从而增加了程序员在阅读和修改代码时的难度。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

编程智慧特点

你需要避免其它情况,比如用在复杂表达式里面,比如foo (i++),foo (++i) + foo (i),…… 没有人应该知道,或者去追究这些是什么意思。 永远不要省略括号。   ...很多语言允许你在某种情况下省略括号,比如C,Java 都允许你在 if 语句里面只有一句话时候省略括号: if (...) action1();   咋一看少打了两个字,多好。...首先,也许你以后又想把action2()去掉,这样你为了样式一致,又得把括号拿掉,烦不烦啊?其次,这使得代码样式不一致,有的 if 有括号,有的又没有。况且,你为什么需要记住这个规则?...有人可能会说,全都打上括号,只有一句话也打上,多碍眼啊?然而经过实行这种编码规范几年之后,我并没有发现这种写法更加碍眼,反而由于括号存在,使得代码界限明确,让我眼睛负担更小了。...很多人“可用”代码还没写出来呢,就在关心“重用”。为了让代码可以重用,最后自己搞出来各种框架捆住手脚,最后连可用代码就没写好。如果可用代码都写不好,又何谈重用呢?

85860

C++ Break、Continue 和 数组操作详解

要声明数组,请定义变量类型,指定数组名称,后跟方括号,并指定它应该存储元素数:string cars[4];我们现在声明了一个变量,它保存了一个包含四个字符串数组。...要向其中插入值,我们可以使用数组文字 - 将值放在逗号分隔列表中,放在括号内:string cars[4] = {"Volvo", "BMW", "Ford", "Mazda"};要创建一个包含三个整数数组...,你可以这样写:int myNum[3] = {10, 20, 30};访问数组元素通过在方括号 [] 内引用索引号来访问数组元素。..., 50};for (int i : myNumbers) { cout << i << "\n";}省略数组大小在 C++ 中,你不必指定数组大小。...= {"Volvo", "BMW", "Ford"}; // 也是三个数组元素然而,最后一种方法认为是“良好做法”,因为它将减少程序中错误几率。

8110

23条JavaScript初学者应知最佳实践方法

这不仅会极大地降低你脚本性能,也会造成一个巨大安全隐患,因为这赋予传递进来纯文本太多能力。要尽可能地避免eval函数使用。 不要懒手 技术上来说,你确实可能侥幸地省略多数括号和分号。...事实上,它本意是: if(someVariableExists) x = false; anotherFunctionCall(); 你应该也注意到了,代码中缩进模仿了括号功能。...毋庸置疑,这是非常恐怖做法,无论如何都应该避免。唯一可以省略括号时候是在一行式语句中,但即使这种情况,也是很有争议。...= function() { console.log(this.name); } 然而,这种方式因其行为并不是我们所想那样而认为是“糟糕实践。...var someItem = 'some string' functiondoSomething() { return 'something' } 话虽如此,但这是一种非常糟糕做法,可能导致更大问题

50430

23条JavaScript初学者应知最佳实践方法

这不仅会极大地降低你脚本性能,也会造成一个巨大安全隐患,因为这赋予传递进来纯文本太多能力。要尽可能地避免eval函数使用。 不要懒手 技术上来说,你确实可能侥幸地省略多数括号和分号。...事实上,它本意是: if(someVariableExists) x = false; anotherFunctionCall(); 你应该也注意到了,代码中缩进模仿了括号功能。...毋庸置疑,这是非常恐怖做法,无论如何都应该避免。唯一可以省略括号时候是在一行式语句中,但即使这种情况,也是很有争议。...= function() { console.log(this.name); } 然而,这种方式因其行为并不是我们所想那样而认为是“糟糕实践。...var someItem = 'some string' function doSomething() { return 'something' } 话虽如此,但这是一种非常糟糕做法,可能导致更大问题

41810

谷歌R语言格式指南

选文|Aileen 翻译|徐宇文,周冲 校对|姚佳灵 R语言是一种主要应用于统计计算和可视化高级编程语言。...括号:左括号在同一行上,右括号另起一行 7. else:else前后都是括号 8. 赋值:使用“<-”,而不是“=” 9. 分号:不要使用 10. 整体布局和顺序 11....不要在圆括号或者方括号里面的代码前后加上空格 例外: 在逗号后面总是要加一个空格 好例子—— ? 不好例子—— ? 括号括号不能单独成行;右括号一定要单独成行。...可以在只有一个语句代码模块里省略括号; 但是必须保持对所有的单个语句代码一致性。 ? 也可以写成: ? 一个模块语句总是另起一行 不好例子—— ?...else前后括号 else语句应该总是在同一行中被括号围绕着 if (condition) { one or more lines } else { one or more lines }

85130

lambda表达式杂谈

但是这种实现方法有点过时,不潇洒,现在流行做法应该是这样子 看, 一样实现了要求,代码却简洁了许多。...更一般符合大众审美的写法是这样子 这种写法和第一种写法思路是相同, 不同点在于,第一种方法使用是lamda表达式,而这种方法使用是匿名函数。...从狭义角度理解,因该不算,lambda表达式讲究是飘逸潇洒,匿名函数太臃肿了,如果它自认是lambda表达式, 我都替他不好意思。...且慢,这个匿名函数为什么带一个use关键字, 这个use关键字是什么鬼? 话说php匿名函数带个use关键字这事吧, 我觉得有好有坏。...kotlinlambda表达式可以这样写 {} 就一个括号,连常规lambda表达式括号和箭头都省了。

62240

c语言进阶(2)

上面三种是正确。 并且我们有一个想法,为什么要有数据类型呢?直接丢给变量一整块空间让他使用不好吗。答案当然是不好,这样会导致空间浪费。本质是对内存进行合理划分。 类型在c语言中为什么有这么多种?...unsigned signed 整型储存 任何数据在计算机当中都必须转化为11二进制,但这又是为什么呢?因为计算机只认识0和1。符号位(0表示正数,1表示负数)+数据位。有符号数且为正数。...\0字面值本身就是0,他只不过是char类型一种表示。 \0以整形输出,结果就是0。而真正字符0其实并不是0,而是48。‘\0'代表是字符,设置为0值。...所以c99当中bool类型可移植性较好。 运行下面这个程序: 我们会发现输出结果是1 2 3。 第一种比较方法不推荐,因为我们会误认为是整数比较。第二种方法也不推荐,false只有C99支持。...如果采用括号,就是如下形式: 在如下这个语句中,可以打印出hello world:  在这个代码中,分号和if匹配了,所以printf这个语句总是会执行

8010

PHP代码规范

1.1 统一 统一是指,对于同一个概念,在程序中用同一种表示方法,比如对于供应商,既可以用supplier,也可以用provider,但是我们只能选定一个使用,至少在一个项目中保持统一。...省略元音缩写方式不要使用,我们英语往往还没有好到看得懂奇怪缩写。 1.4 英文 vs 拼音 尽量使用通俗易懂英文单词,如果不会可以向队友求助,实在不行则使用汉语拼音,避免拼音与英文混用。...纯PHP代码文件必须省略最后 ?> 结束标签。 3.2.3. 行 行长度一定不能有硬性约束。...每个结构体主体都必须包含在成对括号之中,这能让结构体更加结构话,以及减少加入新行时,出错可能性。...参数列表以及变量列表可以分成多行,这样,包括第一个在内每个参数或变量都必须单独成行,而列表括号与闭包开始括号必须放在同一行。 以下几个例子,包含了参数和变量列表分成多行多情况。

2.1K30

深度思考编程艺术

在后面我会告诉你为什么if语句最好有两个分支。 写模块化代码 有些人吵着闹着要让程序“模块化”,结果他们做法是把代码分部到多个文件和目录里面,然后把这些目录或者文件叫做“module”。...变量msg两次赋值,表示完全不同两个值。它们立即被log.info使用,没有传递到其它地方去。这种赋值做法,把局部变量作用域不必要增大,让人以为�它可能在将来改变,也许会在其它地方使用。...你需要避免其它情况,比如用在复杂表达式里面,比如foo(i++),foo(++i) + foo(i),…… 没有人应该知道,或者去追究这些是什么意思。 永远不要省略括号。...很多语言允许你在某种情况下省略括号,比如C,Java都允许你在if语句里面只有一句话时候省略括号: if (...) action1(); 咋一看少打了两个字,多好。...首先,也许你以后又想把action2()去掉,这样你为了样式一致,又得把括号拿掉,烦不烦啊?其次,这使得代码样式不一致,有的if有括号,有的又没有。况且,你为什么需要记住这个规则?

48280

编程智慧

你需要避免其它情况,比如用在复杂表达式里面,比如foo(i++),foo(++i) + foo(i),…… 没有人应该知道,或者去追究这些是什么意思。 永远不要省略括号。...很多语言允许你在某种情况下省略括号,比如C,Java都允许你在if语句里面只有一句话时候省略括号: if (...) action1(); 咋一看少打了两个字,多好。...首先,也许你以后又想把action2()去掉,这样你为了样式一致,又得把括号拿掉,烦不烦啊?其次,这使得代码样式不一致,有的if有括号,有的又没有。况且,你为什么需要记住这个规则?...有人可能会说,全都打上括号,只有一句话也打上,多碍眼啊?然而经过实行这种编码规范几年之后,我并没有发现这种写法更加碍眼,反而由于括号存在,使得代码界限明确,让我眼睛负担更小了。...另外一种省略else分支情况是这样: String s = ""; if (x < 5) { s = "ok"; } 写这段代码的人,脑子里喜欢使用一种“缺省值”做法

40410

C++ Primer Plus 第02章 开始学习C++ 学习笔记

同时也构成了两部分 函数定义(function definition) :第一行int main()函数叫做 函数头(function heading),括号({和})中包括部分叫 函数体。...每个函数都有一个开始括号和一个结束括号,两个括号各占一行。 函数中语句都相对于括号进行缩进。 与函数名称相关括号周围没有空白。 2....两个类没有内置到编译器中。 注意点:类描述了一种数据类型全部属性(包括使用它执行操作),对象则是根据描述创建实体。 C++中信息发送方式 使用类方法(函数调用等) 重新定义运算符 4....如果省略分号,编译器则认为是函数头,要求提供定义该函数函数体。 不要混淆函数原型和函数定义 函数原型只描述函数接口。函数定义包含函数代码。...如果省略void,让括号为空,则C++解释为一个不接受任何参数隐式声明。

70900

前端少为人知知识–前端冷知识集锦(javascript篇)

同时我们注意到,JavaScript中数字是不分浮点和整形,所有数字其实均是浮点类型,只是把小数点省略了而以,比如你看到1可以写成1....,这也就是为什么当你试图1.toString()时会报错,所以正确写法应该是这样:1..toString(),或者如上面所述加上括号,这里括号作用是纠正JS解析器,不要把1后面的点当成小数点。...If语句变形 当你需要写一个if语句时候,不妨尝试另一种更简便方法,用JavaScript中逻辑操作符来代替。...利用这点达到了if效果。 对于传统if语句,如果执行体代码超过了1 条语句,则需要加括号,而利用逗号表达式,可以执行任意条代码而不用加括号。...if(conditoin) alert(1),alert(2),console.log(3); 上面if语句中,如果条件成立则执行三个操作,但我们不需要用括号将这三句代码括起来。

52620

Salesforce Javascript(二) 箭头函数

(); }); 前端不好童鞋(包括我)可能也没有细想,毕竟这个是规范,而且文档就这么写,就正常用了,深入学习一下,这种模式在js中叫做 箭头函数。...全格式写法:全格式写法通常用于参数超过一个,处理逻辑超过1行情况,我们针对多个参数直接使用逗号分隔,使用()对他们进行维护到一组,然后 => 以后在括号{}中进行逻辑语句书写。...有一个参数格式写法:参数区域括号是可选,可写可不写,都是正确方式。...elements.map((element) => { return element.length; }); // [8, 6, 7, 9] // 当箭头函数只有一个参数时,可以省略参数括号...,可以省略 `return` 关键字和方法体括号 elements.map(element => element.length); // [8, 6, 7, 9] 除了这种方式箭头函数,箭头函数也可以有一个简写体或者常见块体

69631

JavaScript 设计模式学习第四篇-ES6 中可能遇到知识点

,也是使用了这个做法。...} // 没有参数时,圆括号不能省略 const test3 = () => { 函数声明 } // 当函数体只是 return 一个单一表达式时,可以省略括号和 return 关键词 const...test4 = () => { return 表达式(单一) } const test4 = () => 表达式(单一) // 函数体返回对象字面表达式时,如果省略括号和 return 关键词,返回值需要加括号...参数如果只有一个,可以不加圆括号 (); 2. 没有参数时,不能省略括号 (); 3. 如果函数体只返回单一表达式,那么函数体可以不使用大括号 {} 和 return,直接写表达式即可; 4....在 3 基础上,如果返回值是一个对象字面量,那么返回值需要加圆括号 (),避免识别为代码块。 2.2.

44910

Swift学习:闭包

: 2.1.根据上下文推断类型,省略参数类型与括号 由于排序闭包函数是作为sorted(by:)方法参数传入,Swift可以推断其类型和返回值类型。...所以sorted(by:)方法一个Int类型数组调用,其参数必定是(Int,Int)->Bool类型函数。最后,根据上下文推断类型,我们可以省略参数类型和参数周围括号。...能够省略闭包括号; 其实,我们经常调用采用自动闭包函数,但是却少去实现这样函数,assert函数就是其中之一: assert(condition:, message:) assert函数中condition...} //由于标明了自动闭包,这里直接省略了闭包括号 serve(customer: customersInLine.remove(at: 0)) //打印出"Now serving Ewa!...作为自动闭包: 调用collectCustomerProviders函数时,传入闭包是表达式形式,自动闭包省略了闭包括号

81810

Java创建数组方法

大家好,又见面了,我是你们朋友全栈君。 最近学Java,一点小心得,希望和大家分享一下,第一次写文章,写不好希望大家谅解,当然我也会尽力写好这篇文章!...Java创建数组方法大致有三种 说明:这里以int为数据类型,以arr为数组名来演示 一、声明并赋值 int[] arr = {1,2,4, …}; 注意这里括号不是语句块,而且而且括号分号也不能省...在创建时候可以指定 int[][][] arr = new int[m][n][q]; //同样其中n、q可以省略 总结 无论那种方法声明必须有 :数据类型 [ ] , 如:int[ ] 创建多维数组时...,new后面的第一个方括号元素数量总不能省略 “new 数据类型[]{}”创建数组时,其中括号可以省去,但要在“[ ]”中填写数组个数 ---- 各个创建数组方法使用演示如下 方法一: int...方法 作用: 将数组元素生成字符串,数组各个元素使用方括号括着 [ ] 格式: Arrays.toString(数组名称) 注意: 此方法不能用于直接获得二维数组 应用代码: int[] arr

1.1K20

【Shell编程】快速入门变量、字符串、传递参数

Shell 既是一种命令语言,又是一种程序设计语言。 Shell script 是一种为 shell 编写脚本程序。...sh 是 bash 快捷方式 3.2 执行方式二 方式一简化方式 3.2.1 问题 : 请思考 为什么可以省略 /bin/ 因为 PATH 环境变量中增加了...2 使用变量 使用一个定义过变量,只要在变量名前面加美元符号即可,如: 变量名外面的括号是可选,加不加都行,加括号是为了帮助解释器识别变量边界,比如下面这 种情况: 如果不给...skill 变量加括号,写成 echo "I am good at $skillScript" ,解释器就会把 $skillScript 当成一个 变量(其值为空),代码执行结果就不是我们期望样子了...推荐给所有变量加上括号,这是个好编程习惯。

1.2K30

php八种基本数据类型

SimpleXML 对象                 其它非零值(不论正负)一样,认为是 TRUE!...php $a='tom'; $heredoc=<<<EOD $a EOD; //变量a解析显示 ②复杂方法(括号法): 复杂语法不是因为其语法复杂而得名,而是因为它可以使用复杂表达式。...用括号将变量名括起来,例如{$a},变量将被解析。括号进行定界符解析。 代码如下: <?...php //输出haha123,把变量a赋值haha $a='haha'; echo "{$a}123"//括号变量解析,输出haha123 括号增删改查 <?...NULL(空值) 特殊 NULL 值表示一个变量没有值。NULL 类型唯一可能值就是 NULL。 在下列情况下一个变量认为是 NULL: 赋值为 NULL。 尚未被赋值。

1.2K20

Python如何省略括号方法详解

在Python语言中最常见括号有三种,分别是:小括号()、中括号[]、括号{};其作用也不相同,分别用来代表不同Python基本内置数据类型。...1、Python中括号(): 代表tuple元祖数据类型,元祖是一种不可变序列。创建方法很简单,大多数时候都是小括号括起来。...2、Python中括号[]: 代表list列表数据类型,列表是一种可变序列。创建方法既简单又特别。...3、Python中括号{}: 代表dict字典数据类型,字典是Python中唯一内建映射类型。字典中值没有特殊顺序,但都是存储在一个特定键(key)下。键可以是数字、字符串甚至是元组。...在Python中,有两种情况下可以省略括号

1.3K31
领券