首页 > 其他分享 >(八)Rust 函数和注释

(八)Rust 函数和注释

时间:2024-03-30 19:32:17浏览次数:27  
标签:语句 函数 注释 参数 Rust 返回值 表达式

函数

在Rust里,声明函数使用 fn 关键字,按照惯例,针对函数和变量名,Rust使用snake case命名规范:所有的字母都是小写,单词之间使用下划线分开,例如:

函数的参数

定义函数时里边定义的参数,叫形参(parameters)

调用函数时传递的具体参数,叫实参(arguments)

在函数签名里,必须声明每个参数的类型,如果有多个参数,用逗号进行隔开

比如:

函数体中的语句与表达式

函数体由一系列语句组成,可选的由一个表达式结束

Rust是一个基于表达式的语言

语句是执行一些动作的指令

表达式会计算产生一个值(表达式本身就是一个值)

函数的定义也是语句

比如:

语句没有返回值,所以不可以使用 let 将一个语句赋给一个变量,比如:

再延伸一下:

函数的返回值

在->符号后边声明函数返回值的类型,但是不可以对返回值命名

在Rust里边,返回值就是函数体里面的最后一个表达式的值

若想提前返回,可以使用 return 这个关键字,并指定一个值

大多数函数都是默认使用最后一个表达式作为返回值

例如:

注释

Rust还有一种“文档注释”,这个以后遇到再讲

标签:语句,函数,注释,参数,Rust,返回值,表达式
From: https://blog.csdn.net/lx4455123/article/details/137160385

相关文章

  • python-numpy-常用函数详解
    文章目录一、函数详解np.empty(num_points)np.zeros(shape,dtype=float,order='C')np.tile(A,reps)np.newaxisnp.stack(arrays,axis=0)np.roll(a,shift,axis=None)np.repeat(a,repeats,axis=None)arr.reshape(shape)arr.ravel()np.mean(a,axis=None,dtype=None......
  • python3 : 可变数据类型/不可变数据类型 与函数传参
    按语:        可变/不可变数据类型与函数传参:               全局变量为不可变数据或可变数据,并且,用作函数参数,                               函数的局部变量可能会导致全局变量的数值变化。1、可变......
  • Rust简易入门(二)
    Rust内存管理模型"Stoptheworld'"是与垃圾回收(GarbageCollection)相关的术语,它指的是在进行垃圾回收时系统暂停程序的运行。这个术语主要用于描述一种全局性的暂停,即所有应用线程都被停止,以便垃圾回收器能够安全地进行工作。这种全局性的停止会导致一些潜在的问题,特别是对于......
  • Rust简易入门(三)
    Rust的流程控制主要包括条件语句(if、else、elseif)、循环语句(for、while)和跳转语句(break、continue、return)。这些语句使程序员能够根据特定的条件或循环执行代码块,从而实现各种复杂的逻辑控制。例如,if语句允许程序员根据条件执行代码,而for和while循环则用于重复执行代码块,直到满......
  • 前端面试手写题目|编写一个函数,实现对象深拷贝,递归引用,日期,正则symbol健。手写Object.
    快速,选择,希尔45,编写一个函数,实现对象深拷贝,并解决递归引用,日期,正则表达式,对象中含有symbol健等问题。functiondeepCopy(obj,cache=newWeakMap()){if(obj==null||typeofobj!=='object'){r......
  • 类模板、函数模板、其他
    类模板、函数模板、其他static示例代码:#ifndef__COMPLEX__#define__COMPLEX__​classcomplex{  //成员函数的隐藏参数有this->形参不能写.返回值当中可以写可以不写  public: doublereal()const{returnthis->re;}  private: doubler......
  • Rust简易入门(一)
    Rust!Rust!Rust!变量与不可变性在Rust中,变量使用let关键字进行声明Rust支持类型推导,也可以显示指定变量类型变量名采用蛇形命名法,枚举结构体采用帕斯卡命名法,没有使用的变量采用前置下划线_以消除警告强制类型转换关键词as打印变量println!("val:{}",x);print......
  • Item6:如果你不想使用编译器生成函数,就明确拒绝
    芝士wa2024.3.30Item6链接对于一个自定义空类,编译器会自动提供四个构造函数:默认构造函数默认析构函数拷贝构造函数拷贝赋值运算符(=)如果我不想有这些构造函数,应该怎么办呢?书里给出了答案,自己声明这些函数,并设置为private,然后不去实现它,当有人不小心地调用了它们,在li......
  • sort函数对vector一维或者二维数组排序
    目录sort对一维数组排序1、sort对一位数组升序排序2、sort对一维数组降序排序sort对二维数组排序1、sort默认对横坐标进行升序排序,如下:2、使用自定义排序对纵坐标进行升序排序:额外知识:对横坐标进行降序排列,当横坐标相同时,对纵坐标进行升序排序sort对一维数组排序......
  • __cxa_pure_virtual报错(g++编译虚函数时)
    g++编译os的memory'时不知道为什么报错。尝试了很多方法(也可能搜错了)可以确定是纯虚函数出现了问题 复习一下虚函数的子类构造和析构的过程吧(一年过去了)允许派生类调用父类的同名函数而实现不同的功能,也叫动态联编。底层原理:虚函数表+虚函数表指针。每一个类都会对应一个......