MonsterAI .Lab

Flutter • Rust • Next.js

返回首页
Rust

Rust 基础篇 (七):切片类型 (Slice) 与零拷贝内存视图

Waitwalker2026-08-249 min
## 1. 什么是切片? 切片是没有所有权的数据类型,它引用集合中一段连续的元素序列。在底层,切片是一个 **胖指针 (Fat Pointer)**,包含: 1. 指向数据首地址的裸指针。 2. 切片的长度 (Length)。 ```rust fn first_word(s: &str) -> &str { let bytes = s.as_bytes(); for (i, &item) in bytes.iter().enumerate() { if item == b' ' { return &s[0..i]; // 零拷贝切片视图 } } &s[..] } ``` ## 2. 字符串字面量的本质 所有的字符串字面量(如 `let s = "Hello";`)其类型都是 `&str`,直接指向编译产物二进制中的只读数据段,完全不需要在堆上开辟内存。
#Rust#切片#零拷贝#性能调优
回到文章列表 →