go语言(十六)----tag

go 复制代码
package main

import (
	"fmt"
	"reflect"
)

type resume struct {
	Name string `info:"name" doc:"我的名字"`
	Sex string `info:"sex"`
}

func findTag(str interface{})  {
	t := reflect.TypeOf(str).Elem()

	for i := 0;i < t.NumField() ; i++ {
		taginfo := t.Field(i).Tag.Get("info")
		fmt.Println("info: ",taginfo)
	}

}




func main() {
	var re resume
	findTag(&re)

}

2

go 复制代码
package main

import (
	"fmt"
	"reflect"
)

type resume struct {
	Name string `info:"name" doc:"我的名字"`
	Sex string `info:"sex"`
}

func findTag(str interface{})  {
	t := reflect.TypeOf(str).Elem()

	for i := 0;i < t.NumField() ; i++ {
		taginfo := t.Field(i).Tag.Get("info")
		tagdoc := t.Field(i).Tag.Get("doc")
		fmt.Println("info: ",taginfo)
		fmt.Println("doc",tagdoc)
	}

}




func main() {
	var re resume
	findTag(&re)

}
相关推荐
世转神风-9 分钟前
qt-字符串版本与数值版本互转
开发语言·qt
极客代码27 分钟前
深入解析C语言中的函数指针:原理、规则与实践
c语言·开发语言·指针·状态机·函数·函数指针
w-w0w-w1 小时前
C++模板参数与特化全解析
开发语言·c++
不绝1911 小时前
C#核心:继承
开发语言·c#
AI即插即用2 小时前
即插即用系列(代码实践)专栏介绍
开发语言·人工智能·深度学习·计算机视觉
码农水水2 小时前
蚂蚁Java面试被问:混沌工程在分布式系统中的应用
java·linux·开发语言·面试·职场和发展·php
喵了meme2 小时前
c语言经验分享
c语言·开发语言
晚风吹长发2 小时前
初步了解Linux中的动静态库及其制作和使用
linux·运维·服务器·数据结构·c++·后端·算法
Knight_AL2 小时前
用 JOL 验证 synchronized 的锁升级过程(偏向锁 → 轻量级锁 → 重量级锁)
开发语言·jvm·c#