【名词解释】语法糖

语法糖是编程语言中增加程序员便利性的语法结构,不改变语言功能。它通过封装已有功能,提高代码可读性和降低错误概率。C语言中的数组访问就是一种语法糖。C#的Linq展示了语法糖如何引入声明式编程思想,如`Where`和`Max`方法的使用,使得代码更简洁易懂。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

上班时间在知乎瞎逛,程序员每天的代码量是多少——知乎 某答案下看见一个名词:语法糖。

专业词汇高达上,专门去百度了下:

———————————————语法糖 百度百科———————————————

语法糖(Syntactic sugar),也译为糖衣语法,是由英国计算机科学家彼得·约翰·兰达(Peter J. Landin)发明的一个术语,指计算机语言中添加的某种语法,这种语法对语言的功能并没有影响,但是更方便程序员使用。通常来说使用语法糖能够增加程序的可读性,从而减少程序代码出错的机会。
举个例子:在C语言里用a[i]表示*(a+i),用a[i][j]表示*(*(a+i*数组a第二维的长度)+j),看来语法糖不是“现代语言”才有啊,连我们的老大哥C也有,而且这种写法简洁明了,也更好懂了。

————————————————引用结束—————————————————

百度百科真丫不正规...不过基本意思懂了,语法糖是对语言规则的再封装,以减少开发人员犯错的机会。


我更喜欢 语法糖——Andy Niu 这一篇里面的解释:

“语法糖 是计算机语言中的一种语法,语法糖并没有为计算机语言添加新的功能,而是对已有的功能进行了封装,提供给用户更好的编程方式和编码风格。”

这篇文章里面用了一个C#的例子来解释语法糖,我觉得很不错:

“很多人认为,语法糖只是进行了封装,提供更方便的接口,不具有很大的意义。事实并非如此,语法糖的更大意义在于,影响了程序员的编程思想。比如:

var personList = persons.Where(p=>p.Name == "Bill")表达的意思是,找出persons集合中Name为Bill的Person组成的集合。

var maxAge = persons.Max(p => p.Age) 表达的意思是,找出persons集合中最大的年龄。

是不是有一点声明式编程的味道,而C#中的Linq更是体现了声明式编程的思想。”

让我产生写点东西记录一下语法糖的直接根源其实是这两句C#,它实在是太简单太易读了!#麻麻我也要学C sharp

!!!#


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值