ICode9

精准搜索请尝试: 精确搜索
  • Rust实战系列-Rust介绍2022-08-19 23:34:31

    “ 学习资料:rust in action[1] 1. Rust 安装 curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh source"$HOME/.cargo/env" 2. hello world 创建 hello 项目 mkdir rust_tmp && cd rust_tmp cargo new hello cd hello cargo run 看

  • VSCode搭建Rust开发环境2022-08-18 14:34:39

    前言 本文以Windows VSCode + WSL搭建为例。 搭建步骤 1、安装WSL。 2、在WSL中安装c/c++编译环境(Rust依赖gcc): apt install build-essential 运行此命令会自动安装gcc,g++,make等工具。 3、在WSL中安装Rust编译工具。在WSL的shell终端运行如下命令,接着按照提示操作即可: curl --pr

  • Rust 修炼手册-Chapter 1.1 Getting Started2022-08-18 14:31:00

    Installation 安装 Linux 或者macOS 执行命令: $ curl --proto '=https' --tlsv1.2 https://sh.rustup.rs -sSf | sh 这个命令会下载安装脚本工具,并且会安装最新稳定版本的Rust,你有可能需要输入你的密码。如果安装成功就会显示: Rust is installed now. Great! 你需要一个链接器(l

  • rust f64 比较2022-08-15 13:02:20

        (val1 - val2).abs() < f64::EPSILON     val1.to_ne_bytes() == val2.to_ne_bytes() 或者   val1.to_bits() == val2.to_bits()

  • Rust 基础(06) 泛型2022-08-12 00:02:24

    泛型 什么是泛型,泛型的作用,泛型的优势等本文不做介绍,本文只将泛型在 Rust 当中的使用方法. 泛型方法 一个比较两个数大小的并返回其中较大的一个数: fn larget<T: std::cmp::PartialOrd>(a: T, b: T) -> T { if a >= b { a } else { b } } 泛型

  • rust入门(2)2022-08-11 18:01:11

    一、变量的可变性      最基本的赋值   :    let   mut   变量名称:变量类型 =  变量值 ;   a>   let x=5;x=6;   (×)     let mut x=5; x=6;(√)    b>  const   常量赋值 ;   const THREE_HOURS_IN_SECONDS: u32 = 60 * 60 * 3;//跟 c# 中的用法一样

  • Rust变量用法与特征2022-08-09 00:00:09

    变量用法与特征 变量绑定 let a = "hello world"  为何不用赋值而用绑定呢(其实你也可以称之为赋值,但是绑定的含义更清晰准确)?这里就涉及 Rust 最核心的原则——所有权,简单来讲,任何内存对象都是有主人的,而且一般情况下完全属于它的主人,绑定就是把这个对象绑定给一个变量,让这个变量

  • Rust 错误2022-08-06 21:04:36

    一个简单的需求:读入一个目录内的所有文本文件,每个文件的格式都是每一行定义一个二维点,例如x=1,y=2;获取所有点的一个列表。这里不使用serde或者现成的parser库,这么简单的格式直接手写就行了   没有错误处理 先来一个糙快猛的版本。其中用了一个nightly feature str_split_once,不过

  • 如何关闭 vscode 的 rust-analyzer 插件的自动类型提示2022-08-02 01:31:19

    有两种方式解决: 第一种方式: 打开vode的设置界面搜索: typeHints 和 parameterHints ,并设置为 disable 第二种方式: 直接打卡vscode的配置文件 /C:/Users/your_user_name/AppData/Roaming/Code/User/settings.json: 并添加: "rust-analyzer.inlayHints.typeHints.enable": false, "ru

  • 0001-Rust-B-树2022-07-31 21:02:03

    环境 Time 2022-04-26 Rust 1.60.0 前言 说明 基于标准库来学习各种数据结构,并不是从头实现数据结构,未考虑实现性能。 B-树是一种多路搜索树,在标准库中已有相应的实现。 一般编程语言会使用二叉搜索树(BST)来实现有序 Map 和 Set,而 Rust 选择了 B-树。 目标 了解使用 B-树实现有序

  • 基本类型2022-07-31 00:01:24

    基本类型 当一门语言不谈类型时,你得小心,这大概率是动态语言(别拍我,我承认是废话)。但是把类型大张旗鼓的用多个章节去讲的,Rust 是其中之一。 基本类型是程序最基础的类型,相对于引用类型(对象类型)更简单,也是最重要的类型 Rust 每个值都有其确切的数据类型,总的来说可以分为两类:基本

  • 【Rust】树02-二叉树2022-07-30 23:35:41

    环境 Time 2022-04-21 Rust 1.60.0 前言 说明 基于标准库来学习各种数据结构,并不是从头实现数据结构,未考虑实现性能。 实现了二叉树的前序、中序和后序遍历。 示例 引入模块 pub mod binary_tree; 结构定义 use super::{NodeRef, Tree}; #[derive(Default)] pub struct Binary

  • 【Rust】树03-二叉树测试2022-07-30 23:35:19

    环境 Time 2022-04-21 Rust 1.60.0 前言 说明 基于标准库来学习各种数据结构,并不是从头实现数据结构,未考虑实现性能。 实现了二叉树的前序、中序和后序遍历的测试。 示例 测试模块 mod tests { use super::*; use crate::tree::Node; } 前序遍历 #[test] fn 前序遍历(

  • 【Rust】树04-二叉搜索树2022-07-30 23:34:17

    环境 Time 2022-04-21 Rust 1.60.0 前言 说明 基于标准库来学习各种数据结构,并不是从头实现数据结构,未考虑实现性能。 相比较二叉树,二叉搜索树的左节点都比父节点小,右节点都比父节点大。 基于二叉树来实现二叉搜索树,先实现插入和检索方法。 示例 引入模块 pub mod binary_search

  • 【Rust】树05-二叉搜索树2022-07-30 23:33:08

    环境 Time 2022-04-21 Rust 1.60.0 前言 说明 基于标准库来学习各种数据结构,并不是从头实现数据结构,未考虑实现性能。 相比较二叉树,二叉搜索树的左节点都比父节点小,右节点都比父节点大。 基于二叉树来实现二叉搜索树,实现删除方法。 示例 引入模块 pub mod binary_search_tree;

  • 【Rust】树06-二叉搜索树测试2022-07-30 23:32:21

    环境 Time 2022-04-21 Rust 1.60.0 前言 说明 基于标准库来学习各种数据结构,并不是从头实现数据结构,未考虑实现性能。 实现了二叉搜索树的插入、检索和删除测试。 示例 测试模块 #[cfg(test)] mod tests { use super::*; } 插入 #[test] fn bst_插入() { let mut tree

  • 【Rust】树07-平衡二叉树2022-07-30 23:31:52

    环境 Time 2022-04-21 Rust 1.60.0 前言 说明 基于标准库来学习各种数据结构,并不是从头实现数据结构,未考虑实现性能。 二叉树有个不好的地方,就是在最坏情况下,可能退化成单链表的结构。 比如按从小到大的顺序插入,节点都在右孩子上,平衡二叉树(AVL)可以解决这种情况。 示例 引入模块

  • Rust 从入门到精通02-安装2022-07-30 11:04:16

    1、安装 Rustup 是rust 官方版本管理工具,安装rustup 会自动安装好 rust(还会自动安装Cargo,这是Rust 的构建系统和包管理器,很重要),所以我们只需要安装 rustup 即可。 ①、官网安装地址 https://rustup.rs/# ②、对于 Mac 或者 Linux 系统 curl --proto '=https' --tlsv1.2 -sSf htt

  • rust iter32022-07-28 13:06:25

    struct CountdownIterator(i32); impl Iterator for CountdownIterator { type Item = i32; fn next(&mut self) -> Option<Self::Item> { self.0 -= 1; if self.0 < 0 { None } else { Some(self.

  • rust iter 22022-07-28 12:01:07

    use std::ptr; use std::fmt::{ Display, Formatter, Result }; pub struct Node { value: i32, next: *mut Node } impl Node { pub fn new(val: i32) -> Self { Node { value: val, next: ptr::null_mut(), }

  • rust postgres2022-07-27 14:06:03

    use postgres::{Client, NoTls}; fn main(){ let mut client = Client::connect("host=localhost user=postgres password=postgres port=5433", NoTls).unwrap(); client.batch_execute(" CREATE TABLE person ( id SERIA

  • Rust 基础(04) 枚举2022-07-26 00:31:44

    枚舉 定義 通过 enum 声明关键字,并且在里面定义各个枚举的变体(具体枚举值),而每个枚举值可以绑定数据。比如 周五(Fri 就绑定了一个 String 类型的数据),除了 String 枚举的变体可以绑定任何类型的数据,甚至是结构体和其他的枚举(不能包含自己)。 enum Week { Mon, Tue, W

  • rust mopa2022-07-25 18:34:05

    #[macro_use] extern crate mopa; struct Bear { // This might be a pretty fat bear. fatness: u16, } impl Bear { fn eat(&mut self, person: Box<dyn Person>) { self.fatness = (self.fatness as i16 + person.weight()) as u16; }

  • rust downcast2022-07-24 10:00:34

    downcast-rs = "1.2" // Can call macro via namespace since rust 1.30. use downcast_rs::Downcast; use std::fmt::Debug; // To create a trait with downcasting methods, extend `Downcast` or `DowncastSync` // and run `impl_downcast!()` on the trait.

  • rust库学习-diesel2022-07-23 16:33:05

    介绍 diesel 是一个 orm 框架 支持 postgresql,mysql,sqlite 不用的数据库接口可能会不一样 官方例子地址 实践 新建工程 cargo new --lib diesel_demo cd diesel_demo Cargo.toml [dependencies] diesel = { version = "1.4.4", features = ["postgres"] } 安装diesel_cli

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有