怎样实现两个同类型结构体能不能整体交换整体的交换

一、添加结构体能不能整体交换,多if暴力

最先遇到这个问题是在比编写PUT方法的接口时遇到
解决方法是增加一个Input struct,该struct字段的变量嘟为原结构体能不能整体交换的指针类型
优点:可以根据业务逻辑做出改变。
缺点:冗余、易错(每次测试PUT方法时需要特别小心)。

这个做法是标准只是我认为太繁琐想简化一下,参考这篇

最近看了波罗学大佬的一篇突发奇想,可以使用Go的反射实现交换struct中的值
类似的作品就想到了开源的,参考了一下源码写了一个劣质Demo。

思路很简单需要修改的字段在tag中增加swapstruct,运用反射查找相同tag修改值
优点:简单,不嫆易出错

我要回帖

更多关于 结构体能不能整体交换 的文章

 

随机推荐