golang go中嵌套结构的实现

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了golang go中嵌套结构的实现相关的知识,希望对你有一定的参考价值。

package main

import (
	"fmt"
)

type objenv struct {
	contents map[string]objenv
}





func main() {
	practice := objenv{contents:make(map[string]objenv)}
	practice.contents["std"] = objenv{contents:make(map[string]objenv)}
	practice.contents["std"].contents["plus"] = objenv{contents:make(map[string]objenv)}
	fmt.Println(practice)

}

golang结构体组合与“多态” 2021-08-06

参考技术A

如:

核心思想就是, 外层实现接口,通过递归嵌套将被实现的接口实例置于内层,从而达到外层定义,内层使用的效果
BaseBase和Derived都是外层结构体,在它们这一层实现了F2()。ori_impl_1以及ori_impl_2都是外层结构体实现的B接口实例,置于内层完成调用

struct中的字段可以不用给名称,这时称为匿名字段。匿名字段的名称强制和类型相同。例如:

如果struct中嵌套的struct类型是自己的指针类型,可以用来生成链表或二叉树等数据结构

例如,定义一个单链表数据结构

以上是关于golang go中嵌套结构的实现的主要内容,如果未能解决你的问题,请参考以下文章

golang结构体组合与“多态” 2021-08-06

Golang入门到项目实战 | golang嵌套结构体

『GoLang』面向对象

golang中级进阶(二):结构体

Golang 面向对象编程

在 GO 中获取嵌套的 JSON 结构数组