From 05522809b94eba445e6e4d8117e664c13d102b40 Mon Sep 17 00:00:00 2001 From: what Date: Fri, 28 Aug 2026 17:09:07 +0800 Subject: [PATCH] =?UTF-8?q?docs:=20=E4=BF=AE=E6=AD=A3=20README=20=E4=B8=AD?= =?UTF-8?q?=E4=BC=9A=E8=A2=AB=E6=B8=B2=E6=9F=93=E6=88=90=E5=88=A0=E9=99=A4?= =?UTF-8?q?=E7=BA=BF=E7=9A=84=E6=B3=A2=E6=B5=AA=E5=8F=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit GFM 支持单波浪线删除线(~text~), 所以同一行出现两个 ~ 时, '快 3~4 倍,访问器快 8~12 倍' 会把中间的 '4 倍,访问器快 8' 渲染成删除线。 表示数值范围的 ~ 统一改为 -。 --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 3f18f25..0e35daa 100644 --- a/README.md +++ b/README.md @@ -20,7 +20,7 @@ Reflux 是一个 Go 语言包,提供了统一的接口用于访问和操作嵌 - 🔥 **增强类型转换**: 支持切片和结构体之间的智能转换(如 []any -> []T, map -> struct) - 🌀 **R 接口集成**: 支持直接传入 R 接口或 []R 切片,无缝集成反射值 - ⚡ **泛型直取**: `reflux.Get[string](r, "Address", "City")` 直接返回目标类型,**零内存分配** -- 🚀 **高性能**: 类型布局缓存 + 指针偏移寻址,Get/Set 比逐次反射快 3~4 倍,访问器快 8~12 倍 +- 🚀 **高性能**: 类型布局缓存 + 指针偏移寻址,Get/Set 比逐次反射快 3-4 倍,访问器快 8-12 倍 - 📦 **零依赖**: 仅依赖 Go 标准库和 spf13/cast ## 安装 @@ -1237,7 +1237,7 @@ type Reflux interface { - **map 只快 1.25 倍**: map 没有稳定的内存布局可以做偏移量运算,这条路径完全走 reflect,而且取出来的值必须拷一份(map 元素不可寻址)。这是设计上的取舍。 - **`New` 慢了约 8 ns**: 构造时要查一次类型描述符缓存。这是一次性成本, - 换来之后每次 `Get`/`Set` 省下 50~100 ns —— 只要构造后至少访问一次就是净赚。 + 换来之后每次 `Get`/`Set` 省下 50-100 ns —— 只要构造后至少访问一次就是净赚。 ### 内存分配