Rust自定义智能指针
2024-09-08 04:56:22
深了,真深了。
use std::ops::Deref; struct MyBox<T>(T); impl<T> MyBox<T> { fn new(x: T) -> MyBox<T> { MyBox(x) } } impl<T> Deref for MyBox<T> { type Target = T; fn deref(&self) -> &T { &self. } } fn hello(name: &str) { println!("Hello, {}!", name); } fn main() { let x = ; let y = MyBox::new(x); assert_eq!(, x); assert_eq!(, *y); let m = MyBox::new(String::from("Rust")); hello(&m); }
最新文章
- ipa如何通过网络进行安装
- 深入浅出RxJava
- 因为此版本的应用程序不支持其项目类型(.csproj)”之解
- [vijos P1524] 最小监视代价
- python刷题专用函数。。
- 自己动手写CPU 笔记
- [CLR via C#]1.2 将托管模块合并成程序集
- Node.js 使用gm处理图像
- Sql server DATEADD日期函数的使用
- 树的常见算法&;图的DFS和BFS
- 201521123047 《Java程序设计》第4周学习总结
- python解释NTFS runlist的代码(文章转自北亚数据恢复张宇工程师)
- masm的一些常用编译选项
- 搜素表脚本.vbs
- Kaldi单音素模型 训练部分
- 求助pycharm里import pandas遇到No module named pandas怎么办
- fastle
- [leetcode]128. Longest Consecutive Sequence最长连续序列
- Windows 之 可以Ping通服务器但无法使用服务器连接的共享打印机
- C#通过反射获取对象属性,打印所有字段属性的值