- 如果目标字段是指针类型,它会尝试直接赋值(如果类型兼容),或创建一个新指针并递归设置其指向的值。 - `rfx_example_test.go` 中新增了测试用例,以验证对 `*string` 等指针字段的设置功能。
- 提取 cloneSequence 函数统一处理 slice/array 克隆 - 提取 cloneElement 函数处理单个元素克隆 - 提取 needsDeepClone 函数判断是否需要深度克隆 - 减少代码重复,提高可维护性 为 ExampleNew_withValue* 系列测试添加 New() 后的输出, 清晰展示深度克隆后的初始状态和值类型正确性。
- 支持指针模式: New(&data) - 直接修改原始数据 - 支持值模式: New(data) - 创建深度克隆,不影响原始数据 - 新增 interface{} 类型支持,自动解析到实际类型 - 对 map 和 slice 等引用类型也进行完全深度克隆 - 新增 9 个单元测试覆盖指针/值/interface 场景 - 新增 9 个示例测试展示各种用法 - 所有测试通过,保持性能 - 更新 README.md 详细说明指针/值传递的区别 - 新增 interface 类型使用示例 - 新增泛型数据处理使用场景 - 更新注意事项说明 - 使用递归解引用处理 interface 和指针类型 - 利用 DeepClone 确保引用类型的完全独立 - 保持向后兼容,现有代码无需修改