会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
早晨学习的地方
写写字,整理知识。
博客园
首页
新随笔
联系
订阅
管理
2022年1月4日
Rust学习——泛型、trait和生命周期
摘要: trait,定义泛型行为的方法。可与泛型结合来将泛型限制为拥有特定行为的类型。 泛型主要用于帮助开发者确保类型拥有期望的行为。 生命周期则确保引用在我们需要他们的时候一直有效。 (生命周期,它是一类允许我们向编译器提供引用如何相互关联的泛型。(即当前变量/函数的引用在什么条件下回收)) 介绍泛型前置
阅读全文
posted @ 2022-01-04 17:43 Tim晨
阅读(722)
评论(0)
推荐(0)
2021年12月13日
Rust学习——错误处理
摘要: 一、不可恢复错误(panic!) 缓冲区溢出:C语言中访问vector不存在的索引,C语言会尝试直接提供所要求 二、可恢复错误(Result<T, E>) 返回类型为Result<T, E>,可以使用match表达式处理。 处理match复杂时,我们可以通过unwrap_or_else方法处理错误,
阅读全文
posted @ 2021-12-13 17:03 Tim晨
阅读(335)
评论(0)
推荐(0)
2021年12月9日
Rust学习——常见集合(Vec、String、HashMap)
摘要: 一、vector 特点:一个挨着一个地存储一系列数量可变的值。 只能存储相同类型的值。 它在内存中彼此相邻地排列所有的值。 常见场景:文件中的文本,购物车中商品的价格。 vector是用泛型实现的。 let v: Vec = Vec::new(); let v = vec![1, 2, 3,]; 使
阅读全文
posted @ 2021-12-09 16:58 Tim晨
阅读(1558)
评论(0)
推荐(0)
2021年12月1日
Rust学习——使用包、crate和模块管理不断增长的项目
摘要: 一、包和Crate 一个包至多只能包含一个库crate 包中可以包含任意多个二进制crate 包中至少包含一个crate,不区分类型 src/main.rs 就是一个与包同名的二进制 crate 的 crate 根。 src/bin → 二进制crate src/lib.rs → 库crate sr
阅读全文
posted @ 2021-12-01 20:54 Tim晨
阅读(404)
评论(0)
推荐(0)
2021年11月30日
Rust学习——枚举和模式匹配
摘要: 一、枚举(enums) Rust中枚举由成员(variants)组成 枚举替代结构体优势: 1. 每个成员可以处理不同类型和数量的数据 结构体与枚举相似点: 1. 都可以使用impl定义方法 2. 方法体都使用self来获取调用方法的值 Rust没有空值(即Null),但Rust拥有一个可以编码存在
阅读全文
posted @ 2021-11-30 15:52 Tim晨
阅读(299)
评论(0)
推荐(0)
2021年11月29日
Rust学习——结构体
摘要: 讨论元组和结构体,比较、对比 如何定义和实例化结构体 如何定义关联函数 一、结构体 使用struct 关键字声明 Struct User { name: String, // name 称之为字段 } 实例可变可以使用点号修改结构体某个字段。 Rust不允许只将一个不可变的结构体中某个字段标记为可变
阅读全文
posted @ 2021-11-29 19:26 Tim晨
阅读(532)
评论(0)
推荐(0)
Rust学习——所有权概念
摘要: 一、什么是所有权 一旦理解了所有权,就不需要经常考虑栈和堆了。 一些语言自带垃圾回收机制 一些语言需要程序员手动分配内存和释放 Rust通过所有权系统管理内存,编译器会在编译时根据一些列规则进行检查。在运行时,所有权系统不会减慢程序。 栈(Stack):所有数据必须占用已知固定的大小 堆(Heap)
阅读全文
posted @ 2021-11-29 15:26 Tim晨
阅读(194)
评论(0)
推荐(0)
2021年11月26日
Rust学习——基础概念
摘要: 变量: let 、let mut const 数据类型: 标量类型(scalar types) 整型 有符号 和 无符号 代表数字能否为负值 有符号:-(2^(n-1)) ~ 2^(n-1) - 1 无符号:0 ~ 2^n - 1 长度类型为 arch 表示根据当前计算机架构位数,64位就是64位,
阅读全文
posted @ 2021-11-26 17:19 Tim晨
阅读(155)
评论(0)
推荐(0)
2021年11月9日
HTTP2.0相较HTTP1.0有哪些升级
摘要: 一、http发展史 1-1. 互联网 互联网的发源,始于1969年美国的阿帕网(ARPANET),中文直译“高级研究项目-代理网络”,其开始是为了建立一种用于军队通信的网络。另一种推动互联网发展的是NSF网,它最初是由美国国家科学基金会资助建设的,目的是连接全美的5个超级计算机中心,供100多所美国
阅读全文
posted @ 2021-11-09 16:15 Tim晨
阅读(169)
评论(0)
推荐(0)
2021年11月8日
继续上路,过往不恋
摘要: 离上一次发技术文已经有5年之久了,近期继续开始写,一方面积累体系知识,学到记到用到抽象,另一方面训练写作技巧。 谨以此文,纪念逝去的5年。
阅读全文
posted @ 2021-11-08 14:26 Tim晨
阅读(43)
评论(0)
推荐(0)
下一页
公告
Top