Beginng_Rust
rgwu
这个作者很懒,什么都没留下…
展开
-
Begging_Rust(译):丢弃,移动和复制(第二十一章)
在本章中,您将学习:•为什么对象的确定性和隐式破坏是Rust的一大优点•对象所有权的概念•为什么自定义析构函数可能有用,以及如何创建它们•三种赋值语义:共享语义,复制语义和移动语义•为什么隐式共享语义不利于软件的正确性•为什么移动语义可能比复制语义具有更好的性能•为什么某些类型需要复制语义而其他类型不需要,以及如何指定•为什么某些类型需要不可克隆,以及如何指定确定性破坏到目前为...翻译 2018-09-27 23:38:15 · 1650 阅读 · 0 评论 -
Beginng_Rust(译):定义闭包(第十三章)(完结+1)
在本章中,您将学习:•为什么需要匿名内联函数,对参数和返回值类型进行类型推断,而不必编写大括号,并且可以访问函数定义点处的活动变量•如何声明和调用名为“闭包”的轻量级函数需要“一次性”函数以升序对数组进行排序的Rust方法如下:let mut arr = [4, 8, 1, 10, 0, 45, 12, 7];arr.sort();print!("{:?}", arr);这将打印...翻译 2018-10-06 23:59:44 · 410 阅读 · 0 评论 -
Beginng_Rust(译):输入/输出和错误处理(第十七章)(完结+1)
在本章中,您将学习:•如何从用于启动程序的命令行获取参数•退出程序时如何将状态代码返回给操作系统•如何获取和设置过程环境变量•处理运行时错误的技术和最佳实践•如何从控制台键盘读取以及如何写入控制台屏幕•原始类型如何转换为字符串•如何读取或写入二进制文件•如何一次读取一行文本命令行参数程序输入的最基本形式是通过命令行。let command_line: std::env::Ar...翻译 2018-10-07 08:17:57 · 831 阅读 · 0 评论 -
Beginng_Rust(译):借用和生命周期(第二十二章)
在本章中,您将学习:•“借用”和“生命周期”的概念•哪些是关于借用的典型编程错误,即困扰系统软件•Rust严格语法如何使用借用检查器来防止此类典型错误•插入块的方式如何限制借用范围•为什么函数返回引用需要生命周期指示符•如何使用寿命指定符来表示函数及其含义•借阅检查器的任务是什么借用和生命周期我们已经看到,当你将变量“a”赋给变量“b”时,有两种情况:它们的类型是可复制的,也就是...翻译 2018-10-18 22:28:31 · 329 阅读 · 0 评论 -
Beginning_Rust:使用原始类型(第六章)(完+1)
在本章中,您将学习:•如何以十六进制,八进制或二进制表示法编写数字文字•如何使用下划线字符使数字文字更易于阅读•如何使用指数表示法以紧凑的形式写入大数字或小数字•哪些是十个原始整数数字类型,以及两个原始浮点数数字类型; 这是他们的范围; 什么时候更好地使用它们•如何指定具体类型或无约束类型的数字文字•如何将数值转换为其他数字类型•其他原始类型:布尔值,字符和空元组•类型推断的工作原...翻译 2018-09-21 07:05:06 · 928 阅读 · 0 评论 -
Begging_Rust(译):做算术(第二章)
做算术在本章中,您将学习:如何计算整数之间或浮点数之间的算术运算如何编写包含多个语句的程序如何在多行中打印字符串添加整数让我们看看如何计算两个整数的和; 例如,80和34.将以下行作为main函数的大括号的唯一内容:print!("The sum is {}.", 80 + 34);执行将打印:“总和是114.”。print宏的第二个参数是表达式80 + 34。编译器肯定...翻译 2018-09-20 20:57:18 · 340 阅读 · 0 评论 -
Beginning_rust(译):命名对象(第三章)(完)
在本章中,您将学习:“值”,“对象”和“变量”的概念变量“可变性”的概念初始化和重新分配之间的差异如何避免对未使用的变量发出警告“布尔表达式”概念编译器为分配执行哪些类型检查某些运算符如何执行算术运算和赋值如何调用Rust标准库中定义的函数将名称与值相关联到目前为止,我们已经看到了三种值:字符串,整数和浮点数。但是值不应该与对象和变量混淆。 所以,让我们定义“值”,“对象...翻译 2018-09-20 23:09:33 · 442 阅读 · 0 评论 -
Begginng_Rust(译):分配内存(第十一章)
在本章中,您将学习:•各种内存分配,性能特征及其局限性•如何在Rust中指定要用于对象的内存分配•引用和盒子之间的差异各种分配要理解Rust语言,还要了解任何其他系统编程语言(如C语言),了解内存分配的各种概念(如静态分配,堆栈分配和堆分配)非常重要。本章完全致力于此类问题。 特别是,我们将看到四种内存分配:•在处理器寄存器中• 静态的•在堆栈中•在堆中在C和C ++语言中,...翻译 2018-09-22 11:14:06 · 1328 阅读 · 0 评论 -
Beginning_Rust:使用异构数据结构(第八章)
在本章中,您将学习如何定义和使用其他复合类型:•元组•结构•元组结构它们可用于对不同类型的对象进行分组。在本章的最后,您将看到一些代码样式约定。元组数组和向量可以包含多个项目,但这些项目必须都是相同的类型。如果您希望在单个对象中存储多个不同类型的子对象,您可以这样做:let data = (10000000, 183.19, 'Q');let copy_of_data = da...翻译 2018-09-21 07:23:49 · 450 阅读 · 0 评论 -
Begginning_Rust(译):定义函数(第九章)
在本章中,您将学习:•如何定义自己的过程(更好地称为“函数”)以及如何调用它们•何时以及如何使用相同名称的多个功能•如何将参数传递给函数,按值或按引用传递•如何从函数返回简单值和复合值•如何从函数中提前退出•如何操纵对象的引用定义和调用函数如果您多次编写相同的代码,则可以将该代码封装在一个块中,然后为该块命名。 通过这种方式,您可以定义“功能”。 然后,您可以通过按名称调用该函数来...翻译 2018-09-22 06:56:09 · 330 阅读 · 0 评论 -
Beginng_Rust(译):使用特征(Traits)(第十八章)
在本章中,您将学习:•调用泛型函数时,traits如何避免难以理解的编译器错误消息•泛型参数的边界如何可以是单一的,或者可以在几个特征中分解•traits如何为其包含的函数创建范围•如何使用“self”关键字创建可使用“点符号”调用的函数,语法更简单•如何使用标准库特征,如“显示”特征•迭代如何只是一个特征•如何定义类型别名•如何定义泛型迭代器•如何使用关联类型来简化通用迭代器的...翻译 2018-10-17 21:39:30 · 431 阅读 · 0 评论 -
Beginng_Rust(译):使用数据序列(第五章)(完+1)
在本章中,您将学习:•如何定义相同类型的对象序列,具有固定长度(数组)或可变长度(向量)•如何通过列出项目或指定一个项目及其重复计数来指定数组或向量的初始内容•如何读取或写入单个数组或向量的值•如何将项目添加到矢量或从矢量中删除项目•如何创建具有多个维度的数组•如何创建空数组或向量•如何打印或复制整个数组或向量数组到目前为止,我们已经看到了如何在变量中存储字符串,数字或布尔值。 ...翻译 2018-09-21 06:59:55 · 338 阅读 · 0 评论 -
Beginng_Rust(译):控制执行流程(第四章)(完+1)
在本章中,您将学习:•如何使用if语句基于布尔条件执行不同的语句•如何使用表达式根据布尔条件生成不同的值•只要布尔条件成立,如何使用while语句重复某些语句•如何使用语句重复定义一些语句的次数•变量的有效范围是什么条件陈述(if)布尔值的主要用途是决定如何让程序的执行继续进行。 假设您要打印一个单词,但仅当给定数字为正数时:let n = 4;if n > 0 { pri...翻译 2018-09-21 06:29:20 · 305 阅读 · 0 评论 -
Beginng_rust(译):在终端上打印(第一章)
在终端上打印在本章中,您将学习:如何在Rust语言中编写和运行您的第一个程序如何在终端上输出文本和数字如何编写一个小脚本,使编译器的输出更具可读性如何在代码中编写注释如何开始最短且有效Rust程序是:fn main(){}当然,它什么都不做。 它只定义了一个名为“main”的空函数。 “函数”是指一组执行某些操作并且已经命名的指令。“fn”字是“function”的简写。...翻译 2018-09-20 20:29:58 · 899 阅读 · 0 评论 -
Beginng_Rust(译):枚举案例(第七章)(完+2)
在本章中,您将学习:•枚举如何帮助定义只能从有限的一组案例中获取值的变量•枚举如何用于实现歧视联合类型•如何使用匹配模式匹配构造来处理枚举•如何使用匹配构造来处理其他数据类型,如整数,字符串和单个字符•如何使用布尔警卫来概括匹配构造的模式匹配枚举而不是编写以下代码:const EUROPE: u8 = 0;const ASIA: u8 = 1;const AFRICA: u8 ...翻译 2018-10-06 07:49:48 · 1353 阅读 · 0 评论 -
Beginng_Rust(译):使用复合数据结构(第八章)(完+1)
在本章中,您将学习如何定义和使用其他复合类型:•元组•结构•元组结构它们可用于对不同类型的对象进行分组。在本章的最后,您将看到一些代码样式约定。元组数组和向量可以包含多个项目,但这些项目必须都是相同的类型。 如果您希望在单个对象中存储多个不同类型的子对象,您可以这样做:let data = (10000000, 183.19, 'Q');let copy_of_data = da...翻译 2018-10-06 08:11:15 · 218 阅读 · 0 评论 -
Beginng_Rust(译):定义函数(第九章)(完+1)
在本章中,您将学习:•如何定义自己的过程(更好地称为“函数”)以及如何调用它们•何时以及如何使用相同名称的多个功能•如何通过值或引用将参数传递给函数•如何从函数返回简单值和复合值•如何从函数中提前退出•如何操纵对象的引用定义和调用函数如果您多次编写相同的代码,则可以将该代码封装在一个块中,然后为该块命名。 通过这种方式,您可以定义“函数”。 然后,您可以通过按名称调用该函数来执行该...翻译 2018-10-06 16:39:42 · 326 阅读 · 0 评论 -
Beginng_Rust(译):定义通用函数和结构(第十章)(完+1)
在本章中,您将学习:•如何编写单个函数定义,其调用可以有效地处理不同的数据类型•如何使用类型推断来避免指定使用的类型通用功能•如何编写单个struct,tuple-struct或enum类型,其实例可以包含有效的不同数据类型•如何使用两个重要的标准通用枚举(选项和结果)来表示可选数据或错误功能结果•某些标准功能如何简化Option和Result的处理需要通用函数Rust执行严格的数...翻译 2018-10-06 17:18:43 · 325 阅读 · 0 评论 -
Begginng_Rust(译):定义通用函数和结构(第十章)
在本章中,您将学习:•如何编写单个函数定义,其调用可以有效地处理不同的数据类型•如何使用类型推断来避免指定泛型函数使用的类型•如何编写单个struct,tuple-struct或enum类型,其实例可以包含有效的不同数据类型•如何使用两个重要的标准通用枚举(选项和结果)来表示可选数据或错误功能结果•某些标准功能如何简化Option和Result的处理需要通用函数Rust执行严格的数据...翻译 2018-09-22 08:06:18 · 284 阅读 · 0 评论 -
Beginng_Rust(译) 封面
翻译 2019-06-02 21:00:14 · 249 阅读 · 0 评论