乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      如何使用 Go 中的函數(shù)類型 (function types)?

       F2967527 2021-09-16

      函數(shù)類型(function types)是一種很特殊的類型,它表示著所有擁有同樣的入?yún)㈩愋秃头祷刂殿愋偷暮瘮?shù)集合。

      如下這一行代碼,定義了一個名叫 Greeting 的函數(shù)類型

      type Greeting func(name string) string

      這種類型有兩個特征:

      1. 只接收一個參數(shù) ,并且該參數(shù)的類型為 string

      2. 返回值也只有一個參數(shù),其類型為 string

      一個函數(shù)只要滿足這些特征,那么它就可以通過如下方式將該函數(shù)轉(zhuǎn)換成 Greeting 類型的函數(shù)對象(也即 greet)

      func english(name string) string {
          return 'Hello, ' + name
      }

      // 轉(zhuǎn)換成 Greeting 類型的函數(shù)對象
      greet := Greeting(english)
      // 或者
      var greet Greeting = english

      greet 做為 Greeting 類型的對象,也擁有 Greeting 類型的所有方法,比如下面的 say 方法

      func (g Greeting) say(n string) {
          fmt.Println(g(n))
      }

      直接調(diào)用試試看,并不會報錯

      greet.say('World')

      將上面的代碼整合在一起

      package main

      import 'fmt'

      // Greeting function types
      type Greeting func(name string) string

      func (g Greeting) say(n string)
       {
          fmt.Println(g(n))
      }

      func english(name string) string {
          return 'Hello, ' + name
      }

      func main() {
          greet := Greeting(english)
          greet.say('World')
      }
      // output: Hello, World
      圖片

      喜歡明哥文章的同學(xué)

        本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約

        類似文章 更多