内容简介:使用facebook的三方库:
使用facebook的三方库: https://github.com/facebookgo/inject
type C struct{ B *B `inject:""` } type B struct{ A *A `inject:""`//这里会根据注入对象的Name字段有选择的进行注入 } type A struct{ Name string } var injectGraph inject.Graph func main() { a := A{ name: "hello", } a2 := A{ Name: "hello2", } c := C{} err := injectGraph.Provide(//对象提供者 &inject.Object{Value: &a}, &inject.Object{Name: "这里可以给对象一个自定义命名", Value: &a2}, &inject.Object{Value: &c},//这个也需要 ) if err != nil{} err = injectGraph.Populate()//填充对象到使用了inject标签的结构体字段中 if err != nil{} fmt.Println(c.B.A.Name) } // 通过injectGraph.Objects()可以获取所有设置了Name的待填充对象 func GetObject(name string) interface{} { for _, o := range injectGraph.Objects() { if o.Name == name { return o.Value } } return nil }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Algorithms for Image Processing and Computer Vision
Parker, J. R. / 2010-12 / 687.00元
A cookbook of algorithms for common image processing applications Thanks to advances in computer hardware and software, algorithms have been developed that support sophisticated image processing with......一起来看看 《Algorithms for Image Processing and Computer Vision》 这本书的介绍吧!