Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Tuplas

Combinam múltiplos valores de tipos diferentes em uma única estrutura de dados composta com um tamanho fixo.

inferência de tipos

#![allow(unused)]
fn main() {
let tipos_dados = ("a", 1);
println!("{:?}", tipos_dados);
}
#![allow(unused)]
fn main() {
let tipos_dados = ('b', 2.);
println!("{:?}", tipos_dados);
}

inferência com atribuição explícita

#![allow(unused)]
fn main() {
let tipos_dados: (&str, u8) = ("c", 3);
println!("{:?}", tipos_dados);
}
#![allow(unused)]
fn main() {
let tipos_dados: (String, bool) = (String::from("d"), true);
println!("{:?}", tipos_dados);
}

Desestruturação com tipos explícitos

#![allow(unused)]
fn main() {
let (texto, numero): (&str, i8);
(texto, numero) = ("e", 44);
println!("{}, {}", texto, numero);
}
#![allow(unused)]
fn main() {
let (texto, numero): (String, f64);
(texto, numero) = (String::from("f"), 128.5);
println!("{}, {}", texto, numero);
}

Desestruturação simples

#![allow(unused)]
fn main() {
let (letra, falso): (char, bool) = ('e', false);
let saida =  (letra, falso);
println!("{:?}", saida);
}
#![allow(unused)]
fn main() {
let pessoa = ("Gregorio", 64, 1.82);
let (nome, idade, altura) = pessoa;
println!("{}, {}, {}", nome, idade, altura);
}