Могу ли я определить метод получения в основном?

go

37 просмотра

1 ответ

Я могу определить функцию глобально,

func f()int{
    return 0
}

Но я также могу сделать в основном,

func main(){
    var f=func()int{
        return 0
    }
}

Могу ли я сделать то же самое с методами получения? Я могу сделать глобально,

type I int
func(i I)f()int{
    return int(i)
}

Но я могу сделать это в основном тоже, так нравится (потому что это не работает)

func main(){
    type I int
    var f=func(i I)()int{
        return 0
    }
}
Автор: ericj Источник Размещён: 08.11.2019 11:26

Ответы (1)


1 плюс

Решение

Нет, не так,
но вот такой пример рабочего кода, который вы все еще можете использовать f:

package main

import "fmt"

func main() {
    j := I(2)
    fmt.Println(j.Double())

    f := j.Double

    fmt.Println(f())
}

type I int

func (i I) Double() int {
    return int(i) * 2
}

выход:

4
4
Автор: user6169399 Размещён: 20.08.2016 03:35
Вопросы из категории :
32x32