go 语言学习笔记 0001 --> iota

2023-11-08

go语言中预置了一个预定义常量 iota

这个东西有个很奇怪的特性,会根据 const 关键字改变值

默认的,iota在const出现的时候会初始化为0,而后不断递加1,直到出现第二个const关键字

const (
	countagn1 = 2 << iota // 2 0
	countagn2 = 2 << iota // 4 2
	countagn3 = 2 << iota // 8 6
)
// 00010 上面的计算结果:iota 不是递加然后加上常量值,而是递加位数,在常量值的二进制数位基础上左移
const (
	countagn4 = 3 << iota // 3 0  3*2^0
	countagn5 = 3 << iota // 6 1  3*2^1
	countagn6 = 3 << iota // 12 2 3*2^2
)
// 00011 所以,口算iota的计算结果,直接在iota的基础上乘以2的iota次方

func main(){
	fmt.Println("countagn1",countagn1)
	fmt.Println("countagn2",countagn2)
	fmt.Println("countagn3",countagn3)
	fmt.Println("countagn4",countagn4)
	fmt.Println("countagn5",countagn5)
	fmt.Println("countagn6",countagn6)
}

// OUT 

countagn1 2
countagn2 4
countagn3 8
countagn4 3
countagn5 6
countagn6 12

结论都写在代码里了,iota对常量的影响并不是相加,而是在常量的二进制数值上进行对应的位移(>>也是可以的),那么由于二进制的表示方式,每位移一次,就是乘以2,所以,常量会以2的iota次方变化。

转载于:https://www.cnblogs.com/haiton/p/10480473.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

go 语言学习笔记 0001 --> iota 的相关文章

  • 用递归算法实现开平方根

    用递归算法实现开平方根 前言 本文是用手算平方根的解法 用python代码实现 手算平方根方法学自西瓜视频李永乐老师 代码为个人原创 手算平方根方法 现在我们有一个非负数S 要求S的平方根 我们可以先将S拆成两个数相加 这两个数分别是小于等
  • Filter过滤器——javaweb

    介绍 Filter 过滤器 用来过滤网站数据 每次请求都会走一次过滤器 直到服务器关闭 Filter 实现步骤 导包
  • QT界面:控件随界面大小自适应变化

    在用QT做一个图像显示界面的过程中需要控件随着QT界面缩放进行自适应变化的问题 特此记录一下 环境 Win10 VS2015 QT5 1 拖拽控件 首先 新建一个QT GUI工程 在Qt Designer中调整界面大小并拖拽需要的控件 如图
  • Vue---Vue常用特性

    一 常用特性概览 表单操作 自定义指令 计算属性 过滤器 侦听器 声明周期 1 表单操作 2 表单域修饰符 number 转化为数值 trim 去掉开始和结尾空格 lazy 将input事件切换change事件
  • el-upload+额外的参数 , element上传功能组件及其参数的详解

    前言 我们使用 element ui 的时候 可能会有一个需求要给后台传入额外的值 我这边是遇到了 然后通过找到各种资料解决了 现在把我的upload的组件分享一下 可以实现导入 导出功能 导入的时候也会有额外的参数 这个是通过 gjlx
  • C++11:右值引用

    新特性目的 右值引用 Rvalue Referene 是 C 新标准 C 11 11 代表 2011 年 中引入的新特性 它实现了转移语义 Move Sementics 和精确传递 Perfect Forwarding 它的主要目的有两个方
  • 【论文阅读】Three scenarios for continual learning

    文章目录 题目 2019 Three scenarios for continual learning 1 论文的总体介绍 2 论文提出的 benchmark 三种场景 2 1 三种场景的定义如下 2 2 split task protoc
  • 动态个人导航网HTML单页源码

    一款单页的网址发布页单页 HTML 模板 可用于网址发布页使用 本模板简约商务 页面精美没有花里胡哨的效果 喜欢的敬请使用 右键单击直接就可以单页面修改 直接下载就可以使用啦 源码地址 旭音导航网 zip 蓝奏云
  • unix域套接字

    UNIX域套接字被用来和同一机器上运行的进程通信 尽管因特网域套接字可以用作同样的目的 然而UNIX域套接字更高效 UNIX域套接字只拷贝 数据 它们没有要执行的协议处理 没有要增加或删除的网络头 没有要计算的校验和 没有要产生的序列号 没
  • 量子芯片是什么

    量子芯片是一种制造的芯片 它能够用来执行量子计算任务 量子芯片通常是用来执行量子纠缠运算的 这是一种特殊的量子运算 可以用来解决计算机难以解决的问题 如密码破解 分子模拟和机器学习 量子芯片通常由多个量子比特 或称为量子位 组成 并且可以通
  • elementui 解决select框有值,但不回显问题

    问题描述 在使用Vue框架和element ui开发时 下拉框遇见一个问题 比如有一个所在地需要选择省市区 当省市选完后 选择区的时候 会发现值已经改变 但是区的下拉框没回显选中的数据 在打印中查看是修改成功了 但在页面中没有及时刷新改变后
  • 崩溃场景_【3D】MaxScript 回调脚本异常(病毒清理)撤销崩溃 灯光消失等常见问题...

    这是另众多3DMAX新老玩家头疼的问题 回调脚本异常是什么 其实它是病毒的体现 而且老版本的ALC等杀毒插件对它无效 出现这个弹窗伴随出现的就是撤销崩溃 灯光删除 关闭文件自动保存等等问题 来了解一下彻底解决的方法 视频版 图文版 1 打开
  • 记录一下 CMU 15445 项目

    目录 Write In Front PROJECT 1 BUFFER POOL TASK 1 LRU REPLACEMENT POLICY 核心概念 数据结构 Other TASK 2 BUFFER POOL MANAGER INSTANC
  • 区块链学习笔记3——BTC协议

    区块链学习笔记3 BTC协议 学习视频 北京大学肖臻老师 区块链技术与应用 笔记参考 北京大学肖臻老师 区块链技术与应用 公开课系列笔记 目录导航页 数字货币所面临的主要挑战 Double spending attack 双花攻击 同一张数
  • java es score_elasticsearch java原生打分插件开发

    能有影响elasticsearch score的方法有很多 官方推荐的是使用内置的painless脚本语言结合function score来重新定义score 由于本人开发的项目其算法是由java语言开发的 于是决定尝试原生脚本开发 ela
  • 石油信息化新技术应用前景

    随着石油信息化集中集成 物联网的建设 云计算 移动互联 大数据技术在石油行业的应用前景如何呢 什么是智慧油田 智能油田呢 个人的一些想法总结如下 对行业的关注基本停留在14年4月 疏漏局限难免 一 关于云计算基础设施在互联网 电商领域应用方
  • html常见标签总结1

    1 常见标签总结01 代码 h1 文本修饰标签 h1 h2 表强调 h2 p strong 这是strong文本修饰标签的效果 strong p p em 这是em文本修饰标签的效果 em p p strong的强调效果更强 em的强调效果
  • linux,时间改成utc

    ln sf usr share zoneinfo UTC etc localtime 运行ok
  • 系统修复模式(Recovery mode) 的体验

    什么是修复模式 直观的体验就是在你的normal mode失败的时候 你发现在你的启动页面 和grub有关 有另一种选项就是recovery mode 具体的定义可以搜索百度或其他 为什么在其他启动失败的时候 修复模式能进入系统 我的经历是
  • Spring MVC静态资源处理

    优雅REST风格的资源URL不希望带 html 或 do 等后缀 由于早期的Spring MVC不能很好地处理静态资源 所以在web xml中配置DispatcherServlet的请求映射 往往使用 do xhtml等方式 这就决定了请求

随机推荐

  • 2023年十大最佳自动化测试工具

    Best Automation Testing Tools for 2023 对更快交付高质量软件 或 快速质量 的需求要求组织以敏捷 持续集成 CI 和DevOps方法论来寻找解决方案 测试自动化是这些方面的重要组成部分 最新的 2018
  • 合并DataGrid单元格

    做项目有时也会遇到要合并DataGrid单元格的情况 在DataGrid单元格中有ColumnSpan RowSpan Visible属性 这跟Table控件中的colspan rowspan属性相同 因此我们可以利用这些属性来合并Data
  • 前端例程20221012:宣纸材质背景

    演示 原理 使用 background image 加载材质图片 材质图片使用半透明的灰度图像 使用 background color 进行染色 代码
  • 在IDEA集成Github

    在IDEA集成Github 在IDEA中设置Git 在File gt Setting gt Version Control gt Git gt Path to Git executable选择你的git安装后的git exe文件 然后点击T
  • OC_YYModel字典转模型的几种详细用法

    OC YYModel字典转模型的几种详细用法 目录 JSON转字符串 普通字典转模型 模型属性有自定义的模型YYUSer 属性有数组 数组里自定义模型 还有字典和集合 字典里的key与模型里的属性名不一致 常用的几个方法 json转模型 i
  • 以太坊分片Sharding FAQ

    简介 目前 在所有的区块链协议中每个节点存储所有的状态 账户余额 合约代码和存储等等 并且处理所有的交易 这提供了大量的安全性 但极大的限制了可扩展性 区块链不能处理比一个单节点更多的交易 很大程度上因为这个原因 比特币被限制在每秒3 7笔
  • 【Linux篇】第八篇——Linux下的进程控制(进程创建+进程终止+进程等待+进程程序替换+简易shell的实现)

    这篇博客就要开始聊一聊进程控制相关的内容了 这部分的内容十分的丰富且十分的重要 学好这一块内容是非常有必要的 目录 进程创建 fork函数 写时拷贝 进程终止 进程退出的三种场景 进程常见的退出方法 进程等待 进程等待的方法 wait方法
  • Unity 实用小技巧合集

    Unity小技巧介绍 一 Unity小技巧介绍 二 Unity小技巧介绍 三 Unity小技巧介绍 四
  • 用canvas绘制微信小程序海报页面并保存相册-适用微信原生

    微信小程序绘制海报并保存相册 tip 代码中使用的是uni的api 如果使用原生微信小程序开发 可以把uni更换成wx使用 文章目录 微信小程序绘制海报并保存相册 前言 一 分析需求 二 准备数据 三 编码开始 html部分 解析 js部分
  • Python中使用xpath获取select option的每一行的text和value

    原数据内容如下
  • 设计模式--适配器模式

    适配器模式属于结构型模式 基本原理 根据不同的需求 使用一个适配器去寻找应对的方法 主要流程 1 创建解决方法的类 2 创建一个适配器 根据不同需求对应相应的解决方法 3 使用一个类去分配适配器 注意 适配器不是在详细设计时添加的 而是解决
  • C语言本身是用什么语言写的?

    先说结论 C语言由B语言编写 B语言是由A语言编写 A B C 好了 不开玩笑了 既然你能提出这个级别的问题 说明你应该学过C 既然你能提出这个级别的问题 说明你没学过编译原理 或者全还给老师了 容我不厚道一下下 你所谓的 C语言 准确来说
  • 基于 Flink CDC 高效构建入湖通道

    本文整理自阿里云 Flink 数据通道负责人 Flink CDC 开源社区负责人 Apache Flink PMC Member Committer 徐榜江 雪尽 在 Streaming Lakehouse Meetup 的分享 内容主要分
  • 免费虚拟局域网(VLAN)组建教程

    虚拟局域网 VLAN 是一组逻辑上的设备和用户 这些设备和用户并不受物理位置的限制 可以根据功能 部门及应用等因素将它们组织起来 相互之间的通信就好像它们在同一个网段中一样 由此得名虚拟局域网 虚拟局域网在日常的工作生活中 起着非常大的作用
  • superset的docker安装配置和汉化

    1 docker拉去superset镜像 docker pull amancevice superset 2 启动容器 1 启动容器 docker run d p 8188 8088 name superset v opt docker s
  • 【Latex排版】使用Latex 排版过程中的那些一二三问题汇总

    排版错误问题总结 1 在 maketitle 位置处报错 Missing inserted 2 添加参考文献 编译后显示错误 并且pdf中引用文献处为问号 持续更新问题 近期用Latex整理期刊论文时遇到了不少问题 现把遇到的问题及最终解决
  • 【华为OD统一考试A卷

    华为OD统一考试A卷 B卷 新题库说明 2023年5月份 华为官方已经将的 2022 0223Q 1 2 3 4 统一修改为OD统一考试 A卷 和OD统一考试 B卷 你收到的链接上面会标注A卷还是B卷 请注意 根据反馈 目前大部分收到的都是
  • React 深度学习:Fiber-ReactFiberLazyComponent

    ReactLazyComponent 包 packages shared ReactLazyComponent js Copyright c Facebook Inc and its affiliates This source code
  • 深入理解线程与并发

    文章目录 计算机硬件与并发 线程与Thread类 线程的特点 线程的优先级 线程控制 总结 个人主页 程序员 小侯 CSDN新晋作者 欢迎 点赞 评论 收藏 收录专栏 Java知识介绍 适用于 Java初学者 希望作者的文章能对你有所帮助
  • go 语言学习笔记 0001 --> iota

    go语言中预置了一个预定义常量 iota 这个东西有个很奇怪的特性 会根据 const 关键字改变值 默认的 iota在const出现的时候会初始化为0 而后不断递加1 直到出现第二个const关键字 const countagn1 2 l