一个‘向量’是一个动态的或者‘可增长的’数组,作为标准库类型 Vec<T>来实现。T 表示我们可以有任何类型的向量(更多信息,请参照泛型的章节)。向量总是在堆上分配它们的数据。你可以使用 vec! 宏来创建它们:
let v = vec![1, 2, 3, 4, 5]; // v: Vec<i32>
(注意,与在之前我们使用的 println! 宏不同,对于 vec! 宏我们使用方括号 []。Rust 允许您在两种情况下使用,这只是个约定。)
对于重复一个初始值,这里有 vec! 的另一种形式:
let v = vec![0; 10]; // ten zeroes
若要获取在向量中的特定索引处的值,我们使用 []:
let v = vec![1, 2, 3, 4, 5];
println!("The third element of v is {}", v[2]);
由于指数从 0 开始,所以第三个元素是 v[2]。
一旦你有了一个向量,你可以通过 for 来遍历它的元素。这里有三个版本:
let mut v = vec![1, 2, 3, 4, 5];
for i in &v {
println!("A reference to {}", i);
}
for i in &mut v {
println!("A mutable reference to {}", i);
}
for i in v {
println!("Take ownership of the vector and its element {}", i);
}
向量有许多更有用的方法,你可以在它们的 API 文档中读到。
不依赖 stdlib默认情况下,std 会链接到每一个 Rust 的封装对象。在一些场景下,这并不是很理想的,在需要的情境下使用 #![no_st...
MATLAB嵌套循环允许使用一个循环的另一循环内。MATLAB嵌套循环语法:在 MATLAB 中嵌套 for 循环语句的语法如下:for m = 1:jfor n...
MATLAB 允许在原有的向量中附加向量,共同创造新的向量。如果有两个行向量 r1 和 r2 这两个行向量中各有 n 和 m 个元素,现在创...
录制宏既然你已经知道了你需要做哪些操作,是时候打开你的宏录制器来创建你的宏了。在你依照下面的录制步骤之前,请确保你已经清...
本章的前面,你学习了给属性赋值,需要使用下面规则:Object.Property = Value如果选项对话框(编辑器页)已经勾选了“自动列出...
在前面的学习中,你学习到了Excel宏录制器创建的一系列指令是和你实际进行的操作完全等同的。这些指令自动地放在工作簿里一个叫...
ASP.NET Web Forms - 导航本节主要介绍了 ASP.NET 网站导航及导航控件如何使用。ASP.NET 带有内建的导航控件。网站导航 维护大型...
ASP.NET Image ImageAlign 属性 Image 控件定义和用法 ImageAlign 属性用于设置或返回图像的对齐方式。 语法asp:Image ImageAlig...