博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Go 面试每天一篇(第 52 天)
阅读量:2287 次
发布时间:2019-05-09

本文共 1026 字,大约阅读时间需要 3 分钟。

点击上方蓝色“Golang来啦”关注我哟

加个“星标”,天天 15 分钟,一起学 Go

你好哇,欢迎来答题,一起来看下

1.下面的代码能否正确输出?

1func main() {2    var fn1 = func() {}3    var fn2 = func() {}45    if fn1 != fn2 {6        println("fn1 not equal fn2")7    }8}

参考答案及解析:编译错误

1invalid operation: fn1 != fn2 (func can only be compared to nil)2

函数只能与 nil 比较。

2.下面代码输出什么?

1type T struct {2    n int3}45func main() {6    m := make(map[int]T)7    m[0].n = 18    fmt.Println(m[0].n)9}
  • A. 1

  • B. compilation error

参考答案及解析:B。编译错误:

1cannot assign to struct field m[0].n in map

map[key]struct 中 struct 是不可寻址的,所以无法直接赋值。

修复代码:

1type T struct { 2    n int 3} 4 5func main() { 6    m := make(map[int]T) 7 8    t := T{1} 9    m[0] = t10    fmt.Println(m[0].n)11}

解析若有不妥之处,欢迎在留言区交流、指正!

看下今天的题目:

1type X struct {} 2 3func (x *X) test()  { 4    println(x) 5} 6 7func main() { 8 9    var a *X10    a.test()1112    X{}.test()13}

2.下面代码有什么不规范的地方吗?

 

答案以及解析会在下一篇文章中给出,鼓励大家在留言区留下答案,抱团学习,日拱一卒,每天进步一点!

ps:看完文章如果有收获,顺手花 1s 时间帮点下文末右下方的「在看」,感激!

所有学习上的成功,都只依靠两件事 -- 策略和坚持,而坚持本身就是最重要的策略!

推荐阅读:

如果我的文章对你有所帮助,点赞、转发都是一种支持!

640?

640?wx_fmt=jpeg

 

转载地址:http://pwfnb.baihongyu.com/

你可能感兴趣的文章
File对象功能-文件列表
查看>>
IO流列出目录下所有内容,带层次
查看>>
IO流删除带内容的目录
查看>>
IO流创建java文件列表
查看>>
Properties存取配置文件
查看>>
记录应用程序运行次数
查看>>
打印流PrintStream和PrintWriter
查看>>
IO流 合并流 SequenceInputStream
查看>>
IO流切割文件
查看>>
IO流-对象序列化操作流
查看>>
io流-多线程连接管道流
查看>>
RandomAccessFile可实现数据的分段写入也就是多线程下载
查看>>
DataInputStream与DataOutputStream用于操作基本数据类型的数据的流对象
查看>>
ByteArrayStream用于操作字节数组的流对象
查看>>
IO流-字符编码表转换示例
查看>>
IO流-转换流的字符编码转换-ISO-8859-1和utf-8和GBK互转
查看>>
网络游戏线上活动的类型及特点(二)
查看>>
“免费游戏”背后的种种
查看>>
活动策划存在的意义
查看>>
休闲网络游戏推广与成功商业化简析(3)
查看>>