数据:什么是“转换”

阅读: 评论:0

数据:什么是“转换”

数据:什么是“转换”

      • 4-14 转换
      • 14 非安全转换
      • 14 不同转换方式性能对比

4-14 转换

字符串数据结构先是有底层的字节数组,保存helloworld,然后标准头对象有个指针指向字节数组开始位置,有个长度。这样的结构看上去有点像切片,区别在于没有容量,因为字符串一旦创建之后,它是只读的,在只读的情况下容量含义没有意义了,因为没有扩容的可能。所以字符串与切片具备一定的结构重叠。

那么我们需要字符串类型转换的时候,普通的转换是string转换为[]byte或者[]ruce[]byte或者[]ruce进行修改,修改完再转换为string。这样做需要做两次内存分配操作,第一次不可变到可变做一次内存分配,然后可变到不可变再做一次内存分配,很显然这种类型转换效果很差。

既然数据结构上存在相似性,如果我能保证数据安全的情况下,我们能不能通过别的方式提供性能优化呢?那么说下简单的转换方式。

假如一个原始字符串,它是动态创建的,并不是保存在rodata里,比如访问客户端返回的,不会保存在rodata里而会保存在堆上面,也就意味着字节数组

本文发布于:2024-02-01 00:33:12,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170671879432528.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:数据
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23