首页 > 其他分享 >Go assert

Go assert

时间:2023-03-09 13:45:05浏览次数:29  
标签:ok 断言 desTypeInstance assert Go usb

Go assert 断言

应用场景

由于接口是用于多态,计算机不知道具体的类型,所以就需要我们使用断言来转化成具体的类型
使用断言的时候,如果类型不匹配就会包panic错误

assert return value

我们在使用断言的时候有两个返回值,第一个是断言之后返回的相应类型的数据,第二个是断言是否成功的bool

使用

if desTypeInstance, ok := usb.(DesType); ok {
    // 上面的 usb.(DestType) 就是断言
    desTypeInstance.Call()
}

标签:ok,断言,desTypeInstance,assert,Go,usb
From: https://www.cnblogs.com/sqmw/p/17198047.html

相关文章

  • django分页器
    分页器Django分页器Django自带分页器,但是不太好用,所以可以直接自定义一个分页器供项目使用。#1.在项目下建一个utils文件夹#2.建立一个py文件,MyPage.py(自己随......
  • 关于Go语言的底层,你想知道的都在这里!
    目录1.GoLang语言1.1Slice1.2Map1.3Channel1.4Goroutine1.5GMP调度1.6垃圾回收机制1.7其他知识点2.Web框架Gin和微服务框架Micro2.1Gin框架2.2Micro框架2.3Vip......
  • Django当中的数据库查询优化
    了解Django框架中进行数据查询优化,需要了解几点:1.查询集是惰性的,这意味着在你对查询集执行某些操作(例如对其进行迭代)之前,不会发出相应的数据库请求;2.始终通过指定要返回......
  • Django 实现WebSocket
    要在Django中实现WebSocket,你需要使用一个称为DjangoChannels的第三方库。安装DjangoChannels:pipinstallchannels创建DjangoChannels配置:在你的项目目录下,创建一......
  • protoc 执行时 提示unable to determine Go import path for
      protoc新版本需要在proto文件中定义包名optiongo_package="path;name";path表示生成的go文件的存放地址,会自动生成目录的。name表示生成的go文件所属的包名......
  • 使用PicGo和Gitee搭建图床
    使用PicGo和Gitee搭建图床在用工具写文章的过程中,如果导入的图片存在本地的话,当我们把文章上传到博客网站去就没法显示了,就算一个图一个图的复制粘贴上去,想一篇文章移植到......
  • LeetCode:Search Algorithm
    LeetCode:SearchAlgorithm1\FirstuniquecharAlgorithmDesign利用字符数量的有限性,通过数组来映射(避免Hash_map的高复杂度)注意数组声明为intA[26]而不是ch......
  • 路飞-day9——redis之列表类型、redis之hash类型、redis其他方法、redis管道、django
    目录一、redis之列表(List)类型二、redis之hash(字典)类型三、redis其他方法(所有类型通用的方法)四、redis管道五、django中使用redis方式一方式二方案一方案二六、celery介绍......
  • 看看CabloyJS是如何异步加载并执行go wasm模块的
    介绍CabloyJS提供了一个内置模块a-wasmgo,将gowasm模块的异步加载运行机制进行了封装,使我们可以非常方便的在CabloyJS项目中引入gowasm,从而支持更多的业务场景开发下面,......
  • redis之列表,redis之hash,redis其他操作,redis 管道,django中使用redis
    redis之列表,redis之hash,redis其他操作,redis管道,django中使用redisredis之列表1lpush(name,values)2rpush(name,values)表示从右向左操作3lpushx(name,value)4......