Rust中的特殊类型(引用、智能指针等)所占的内存大小
综上所述,智能指针/引用所占内存大小是固定的,但是其指向的数据大小未必固定。对于所占内存固定已知的数据类型,运行时会把它们放在栈上,对于所占内存不固定的数据类型,运行时会把它们放在堆上,然后可以通过存放在栈上的指针来操作堆上的数据。Rust中,一个普通指针的大小为usize,与计算机CPU字长相等,对64位计算机来说usize=64/8=8字节。的本质都是智能指针,它们的大小都是固定的(大小不固定也没法通过编译啊),它们的本质是通过存放在栈上的指针访问堆内存,来操作堆上包裹的数据。
原创
2024-08-03 01:54:37 ·
405 阅读 ·
0 评论