iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > 其他教程 >详解Rust中的变量与常量
  • 836
分享到

详解Rust中的变量与常量

Rust变量与常量Rust变量 2022-11-13 18:11:19 836人浏览 安东尼
摘要

目录变量与可变性常量变量隐藏属性Rust 是一种低级静态类型多范式编程语言,专注于安全性和性能,解决了 C/C++ 长期以来一直在努力解决的问题,例如内存错误和构建并发程序。它具有以

Rust 是一种低级静态类型多范式编程语言,专注于安全性和性能,解决了 C/C++ 长期以来一直在努力解决的问题,例如内存错误和构建并发程序。它具有以下三个优点:

1. 靠语法和编译器技术,做到了更好的内存安全特性;

2. 防止数据竞争的数据所有权模型,并发更容易;

3. 抽象没有性能损失。

变量与可变性

在Rust中,哪怕你声明的是一个变量,在默认情况下也是不可更改的,如果改变量具有更改需求,那么需要使用 let 声明的同时给予其可变性 mut

fn main() {
    let mut x = "rust";
    println!("Hello, world! -- Hello {}", x);

    x = "test";
    println!("Hello, world! -- Hello {}", x);

}

// Hello, world! -- Hello rust
// Hello, world! -- Hello test

常量

常量使用 const 关键字声明,常量在绑定值之后也是不可以进行更改的,但是它与不可变的变量有些区别:

  • 不可以使用 mut 关键字,因为常量永远都是不可变的
  • 声明常量的同时必须标注其数据类型
  • 常量可以在任何作用域中声明,包括全局作用域
  • 常量只能被绑定到常量表达式,不能被绑定到函数的调用结果或只能在运行时才能计算出的值
  • 在程序运行期间,常量在其声明的作用域内一直有效
  • 常量名建议大写,每个独立单词之间使用下划线分割开来
fn main() {
    const X: char = '?';
    println!("Hello, world! -- Hello {}", X);
}

变量隐藏属性

在Rust语言中变量有这样一个特性:隐藏

也就是说我们可以使用同名去声明一个新的变量,新的变量会将之前声明的变量隐藏,或者你可以理解为覆盖?

隐藏和变量mut化是不一样的,根本区别就是mut允许改变之前的变量值,而隐藏特性是再次声明一个同名变量,隐藏之前的变量

在者说,如果我们不使用 let 关键字,那么重新给非 mut 变量赋值会导致编译时的错误,而使用 let 声明的同名变量,也是不可变的

还有一个特性,就是我们使用 let 声明的同名新变量的类型是没有必要和之前的变量数据类型相同的

fn main() {
    let test = 66;
    println!("Hello, world! -- Hello {}", test);

    let test: char = '?';
    println!("Hello, world! -- Hello {}", test);
}

// Hello, world! -- Hello 66
// Hello, world! -- Hello ?

就这个例子我们还可以体验一下Rust的安全以及规范

如果隐藏变量没有被使用,那么编译会报错

fn main() {
    let test = 66;
    let test: char = '?';
    println!("Hello, world! -- Hello {}", test);
}

// help: if this is intentional, prefix it with an underscore: `_test`

Rust提醒我了,如果我们是故意操作,需要在test前加上_ ?

到此这篇关于Rust中的变量与常量的文章就介绍到这了,更多相关Rust变量与常量内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: 详解Rust中的变量与常量

本文链接: https://www.lsjlt.com/news/169767.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 详解Rust中的变量与常量
    目录变量与可变性常量变量隐藏属性Rust 是一种低级静态类型多范式编程语言,专注于安全性和性能,解决了 C/C++ 长期以来一直在努力解决的问题,例如内存错误和构建并发程序。它具有以...
    99+
    2022-11-13
    Rust变量与常量 Rust变量
  • Python中可变变量与不可变变量详解
    目录一 、常见的变量分类1、变量的创建二、变量分类1、、常见的不可变变量2、常见的可变变量三、拷贝的差别四、参数传递的差别前言: C++不同于Python的显著特点,就是有指针和引用...
    99+
    2022-11-12
  • Python中的变量与常量
    目录一、变量、常量的区别二、变量1. Python中的变量不需要声明类型2. 用“=”号来给变量赋值3. 赋值4. 变量5. “=”6. Python允许同时为多个变量赋值三、常量四...
    99+
    2022-11-12
  • Java的变量与常量
      目录 变量 声明变量 变量的声明类型 变量的声明方式:变量名 变量名的标识符 初始化变量 常量 关键字final 类常量 总结 变量和常量都是用来存储值和数据的基本数据类型存储方式,但二者之间有一些关键差别。 变量 在Java中,每个变...
    99+
    2023-09-03
    java
  • 2022最新Rust变量与数据类型讲解
    目录变量与数据类型变量和可变性变量声明变量命名变量的可变性变量遮蔽常量基本数据类型整数类型浮点数类型布尔类型字符类型范围类型复合数据类型元组类型数组类型结构体类型枚举类型无参枚举类型...
    99+
    2022-11-13
    Rust变量与数据类型 Rust数据类型
  • 深入理解Python变量与常量
    变量是计算机内存中的一块区域,变量可以存储规定范围内的值,而且值可以改变。基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中。常量是一块只读的内存区域,常量一旦被初始化就不能被改变。...
    99+
    2022-06-04
    常量 变量 Python
  • Rust中变量的示例分析
    这篇文章给大家分享的是有关Rust中变量的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。01 变量和绑定变量指定了某存储单元(Memory Location)的名称,该存...
    99+
    2022-10-19
  • 重学Go语言之变量与常量的声明与使用详解
    目录变量变量名声明变量作用域常量iota 常量生成器小结变量 什么是变量?变量是一块可以随时存放数据的内存区域。在我们申请这块内存区域(声明变量)时,需要指定变量名以及变量的数据类型...
    99+
    2023-03-02
    Go语言变量 常量 Go语言变量 Go语言 常量
  • Python中的变量与常量是什么
    这篇文章将为大家详细讲解有关Python中的变量与常量是什么,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。一、变量、常量的区别变量:在程序运行过程中,值会发生变化的量。常量:在程序运行过程中...
    99+
    2023-06-25
  • C语言的变量与常量 字符字符串与转义字符详解
    目录一.变量1.1定义变量的方法1.2变量的分类1.3变量的使用二.常量2.1字面常量 2.2 const修饰的常变量 2.3#define定义的标识符常量2.4...
    99+
    2022-11-12
  • 详解python中的变量
    目录变量变量的分类:赋值变量的命名规则:总结变量变量的分类:赋值变量的命名规则:总结变量 一个由程序员或用户定义的量且在程序中可能发生改变的量 #变量是所有程序的起点 变量的分类: ...
    99+
    2022-11-12
  • Golang常量和变量的差异与用法解析
    掌握Golang中常量与变量的区别与用法,需要具体代码示例在Golang中,常量和变量是程序中最基本的组成部分,它们在存储和赋值方式上有着一些差异。本文将详细介绍Golang中常量和变量的区别和用法,并提供具体的代码示例,以帮助读者更好地理...
    99+
    2023-12-23
    常量 (Constants) 变量 (Variables) Golang编程 区别与用法 (Differences an
  • 浅析Golang中变量与常量的声明与使用
    目录变量变量的类型声明变量常量iota常见的使用iota的技巧变量 变量的类型 变量的作用是用来存储数据,不同的变量保存的数据类型有可能是不一样的,一般常见的数据类型有:整型、浮点型...
    99+
    2023-05-14
    Golang变量与常量声明 Golang变量 常量 Go 变量 常量
  • php中变量与常量的区别是什么
    本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑什么是php常量?所谓常量就是不能改变的量,PHP 中常量一旦被定义,就不能被修改或取消定义。PHP 常量通常用来存储一个不被改变也不希望变化的数据,该数据只能是四种标...
    99+
    2022-03-30
    php 变量 常量
  • C++变量,常量,数组和字符串详解
    目录一、内存和寻址概述二、变量1.声明变量2.变量的作用域2.1局部变量2.2全局变量3.c++变量类型3.1、bool布尔类型3.2char字符型4.常量总结一、内存和寻址概述 可...
    99+
    2022-11-12
  • Golang中变量与常量怎么声明与使用
    这篇文章主要介绍“Golang中变量与常量怎么声明与使用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Golang中变量与常量怎么声明与使用”文章能帮助大家解决问题。变量变量的类型变量的作用是用来存...
    99+
    2023-07-05
  • php中变量与常量有哪些区别
    这篇文章给大家分享的是有关php中变量与常量有哪些区别的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。区别:1、常量只能用define()函数或const关键字定义;而变量没有定义的关键字或函数,在赋值的时候被定义...
    99+
    2023-06-25
  • Go 语言的变量与常量的概念
    本篇内容主要讲解“Go 语言的变量与常量的概念”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Go 语言的变量与常量的概念”吧!变量go 语言的变量声明和大多数语言类似,通过 var 关键字声明变...
    99+
    2023-06-15
  • 详解python的变量
    目录1.Python 变量的概述:2.Python 变量的命名3.Python 变量赋值3.1 Python 变量赋值概述3.2 Python 变量的基本赋值格式3.3 Python...
    99+
    2022-11-12
  • Java程序结构与常量变量难点解析
    目录前言一、java程序结构二、java程序的运行1.运行过程2.JVM是什么?三、常量与变量1. 计算机工作原理2.变量和类型3.变量的命名规则4.变量的作用范围总结前言 新征程,...
    99+
    2022-11-12
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作