| 1234567891011121314151617181920212223242526272829303132333435 |
- // simple_interface.go
- package main
- import (
- "fmt"
- )
- type Simpler interface {
- Get() int
- Put(int)
- }
- type Simple struct {
- i int
- }
- func (p *Simple) Get() int {
- return p.i
- }
- func (p *Simple) Put(u int) {
- p.i = u
- }
- func fI(it Simpler) int {
- it.Put(5)
- return it.Get()
- }
- func main() {
- var s Simple
- fmt.Println(fI(&s)) // &s is required because Get() is defined with a receiver type pointer
- }
- // Output: 5
|