• 接口

    接口

    1. struct Dog {}
    2. struct Cat {}
    3. fn (d Dog) speak() string {
    4. return 'woof'
    5. }
    6. fn (c Cat) speak() string {
    7. return 'meow'
    8. }
    9. interface Speaker {
    10. speak() string
    11. }
    12. fn perform(s Speaker) {
    13. println(s.speak())
    14. }
    15. dog := Dog{}
    16. cat := Cat{}
    17. perform(dog) // ==> "woof"
    18. perform(cat) // ==> "meow"

    类型通过实现的方法满足接口。和Go语言一样,V语言也是隐式接口,类型不需要显式实现接口。