用值初始化结构定义中的变量

How I can initialize a property in the struct with a value. Look at code snippet, I try like this.

package main

import (
    "fmt"
    "github.com/dchest/uniuri"
)

type mail struct {
    url, email string
    uri string = uniuri.NewLen(20)
}


func main() {


}

But I've got compiler error.

.\assign_default_struct.go:10: syntax error: unexpected =, expecting }

Is there a way, to initialize variable in the struct with a value?

The best way to do this would be to make a constructor as such:

package main

import (
    "fmt"
    "github.com/dchest/uniuri"
)

type mail struct {
    url, email string
    uri string
}


func NewMail(url, email string) mail {
    uri := uniuri.NewLen(20)
    return mail{url, email, uri}
}