The Go Programming Language
› http://golang.org/
› Go Playground
Go Projects
› Revel Web Framework
nanmu42

Go 官方的新教程:泛型 和 fuzz test

  •  2
     
  •   nanmu42 ·
    nanmu42 · Mar 12, 2022 · 5782 views
    This topic created in 1696 days ago, the information mentioned may be changed or developed.
    12 replies  •  2022-03-13 07:11:07 +08:00
    haoliang
    haoliang
    Mar 12, 2022❤️2
    1
    ```
    type Number interface {
    int64 | float64
    }
    ```

    我之前一直以为 interface 仅是对行为的约束,现在也可以代表类型了
    aristotll
    aristotll
    Mar 12, 2022❤️7
    2
    还没有说吗我先来,go 不需要泛型 😠
    keepeye
    keepeye
    Mar 12, 2022❤️1
    3
    已经用上了,写了一些工具函数感觉还可以
    9c04C5dO01Sw5DNL
    9c04C5dO01Sw5DNL
    Mar 12, 2022❤️3
    4
    他们不是说:go 不需要泛型吗?

    看不懂了,真的看不懂了。我是说看不懂邪教信徒了,不是说看不懂 go 了。
    keepeye
    keepeye
    Mar 12, 2022
    5
    // 从一个 slice 中随机取一个元素
    func Choice[T any](items []*T) *T {
    if len(items) == 0 {
    return nil
    }
    return items[rand.Intn(len(items))]
    }
    james122333
    james122333
    Mar 12, 2022 via Android❤️1
    6
    泛型虽然好用 但无疑会增加代码複杂度
    事先定义好也不是不可以 希望不要作为隐藏实现细节的框架使用 代码世界坑还不够多吗
    kunkunzhang
    kunkunzhang
    Mar 12, 2022
    7
    @james122333 事先定义好的,要么重载,要么像 js 一样弱类型,泛型不就是为了解决这种问题的吗
    james122333
    james122333
    Mar 12, 2022 via Android❤️1
    8
    @kunkunzhang

    泛型是节省重複代码 事先定义说的是不节省
    代码生成也是可以的
    EPr2hh6LADQWqRVH
    EPr2hh6LADQWqRVH
    Mar 12, 2022
    9
    🤮 可读性劝退
    yin1999
    yin1999
    Mar 12, 2022 via Android
    10
    现在是 15 个 issues 🙃
    burby
    burby
    Mar 13, 2022
    11
    @yin1999 7 个应该是指的 block tag 的 issue 吧
    yin1999
    yin1999
    Mar 13, 2022 via Android
    12
    @burby 哦哦,是的
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1365 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 48ms · UTC 21:28 · PVG 05:28 · LAX 13:28 · JFK 16:28
    ♥ Do have faith in what you're doing.