表达式:位运算和 if 里的初始化语句

本文探讨了Go语言中保留字的使用限制,位运算符及其在实现bit flag中的作用,特别是AND NOT和XOR的区别。还讲解了对齐函数的意义,以及如何使用if初始化语句来简化代码结构。文章强调了避免条件表达式过长以提高代码可读性,并提出了减少缩进层次的重构建议,以保持代码的清晰和单一职责。
摘要由CSDN通过智能技术生成

保留字

保留字是语法上的一些关键字,和内置函数不同,大部分语言使用保留字作为符号名可能会出问题,所以不允许在编码中使用保留字。Go 语言内置函数在builtin包中,它不需要导入包就可以直接使用,编译器会把它翻译成特殊的函数调用。一些语言允许定义和内置函数相同的函数,我们建议内置函数、内置类型、语法上的保留字不要使用,因为很容易引起误解。

运算符(Operators)

每种语言都会有特殊的运算符,有些运算符在其他语言里可能没有,系统语言里面有特殊的运算符尤其是位移操作。另外运算符可能会涉及优先级问题,Go 语言优先级相对来说比较简单也没有结合律一说。

使用位运算实现 bit flag

运算符中最常见的是位运算符,做应用开发很少会使用二进制位操作,文件系统使用位运算设置权限。

一个字节是由八个二进制位组成,二进制位标记为 1 表示特定的状态,这样一个字节表示八种状态。很多时候适当使用二进制位操作有助于减少内存使用,提高性能,尤其对于系统级软件来说任何时候对于性能要求都是很苛刻的。我们经常布隆结构或者位图数据结构使用二进制位去重。

// 定义好的权限
const (
    read = 1 << iota //0001
    write            //0010
    exec             //0100
    setuid         
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值