golang---利用反射机制对结构体进行循环赋值
来源:互联网 发布:淘宝清洗后钱该怎么办 编辑:程序博客网 时间:2024/06/06 18:32
熟悉C语言的朋友都知道,C语言的指针操作某些方面是很方便的。
如假设你知道内存中有一个连续100个字节的区域,或者你有一个连续100个字节的字节数组,你需要用其对一个已经定义好的结构体进行赋值,在c语言你可以简单地将内存数据中的头地址,或者字节数组的头地址赋值给结构体指针就行。
但在go语言中该如何实现?
假设你有如下的golng结构体:
这个结构体的数据可以对应一个byte[100]字节组。
例如 DTemp_Des 字段的低位时b[1],高位是b[2]
Temp_Des 的低位时b[3],高位b[4] 如此类推
但你对这个结构体赋值的时候你不能笨笨地一个个赋值,如果字段少还可以,字段多比如100个字段,那你会疯掉
笨的做法:
nm:=&NM820_SysVal{}nm.DTemp_Des=uint16(b[1])+uint16(b[2]<<8)........一个个赋值
详细代码如下
注意:
1.开头要引入reflect包
2.变量nm为结构体指针
3.数组b用于结构体赋值的字节数组
0 0
- golang---利用反射机制对结构体进行循环赋值
- 利用java反射机制对多属性javabean赋值
- 利用java反射机制对集合进行排序
- 利用java反射机制对方法进行调用
- 利用反射机制对XML文件进行解析
- 利用发反射对对象进行赋值
- java 利用反射机制,获取实体所有属性和方法,并对属性赋值
- java 利用反射机制,获取实体所有属性和方法,并对属性赋值
- java 利用反射机制,获取实体所有属性和方法,并对属性赋值
- java 利用反射机制,获取实体所有属性和方法,并对属性赋值
- java 利用反射机制,获取实体所有属性和方法,并对属性赋值
- java 利用反射机制,获取实体所有属性和方法,并对属性赋值
- java 利用反射机制,获取实体所有属性和方法,并对属性赋值
- java 利用反射机制,获取实体所有属性和方法,并对属性赋值
- java 利用反射机制,获取实体所有属性和方法,并对属性赋值
- golang-反射机制
- golang的反射机制
- 利用java反射机制进行对象操作
- 灾难的一天:“SSL_connect SYSCALL”和“the scheme https does not accept registry part”两种错误
- IOS开发记录(一)
- 渐变动画/按钮/图片拉伸/copy/KVC/KVO
- POJ 1426 Find The Multiple
- 徒步一千里 (1930) (長津惠山)
- golang---利用反射机制对结构体进行循环赋值
- POJ 2243 Knight Moves
- Sqoop_1. 基本架构及数据操作 -- 待完善
- POJ 3620 Avoid The Lakes
- 【Leetcode】Search a 2D Matrix
- 一些笔记
- 果然还是不够努力是吗?
- 【心灵感悟】—看【人生就是一次列车的旅行】PPT之感
- 八、深拷贝和浅拷贝