Menu
Coddy logo textTech

Múltiplos Valores de Retorno

Parte da seção Fundamentals do Journey de Rust da Coddy. Lição 52 de 75.

Em Rust, uma função pode retornar múltiplos valores usando uma tupla como o tipo de retorno. Uma tupla é um grupo de diferentes valores agrupados em uma única unidade.

Por exemplo:

fn get_coordinates() -> (i32, i32) {
    let x = 10;
    let y = 20;
    (x, y) // Retorna uma tupla
}

E é assim que se chama a função:

let (x, y) = get_coordinates();
// Desestrutura a tupla
// em variáveis separadas

println!("{}, {}", x, y);

Você pode retornar quantos valores precisar adicionando mais elementos à tupla. Por exemplo:

fn get_details() -> (String, i32, f64) {
    let name = String::from("Alice");
    let age = 30;
    let score = 95.5;
    (name, age, score)
    // Retorna uma tupla com três valores
}

E é assim que se chama a função:

let (name, age, score) = get_details();
println!("{}, {}, {}", name, age, score);
challenge icon

Desafio

Fácil

Crie uma função chamada get_user_info que retorna uma tupla contendo o nome, a idade e o endereço de e-mail de um usuário. A função deve ter a seguinte assinatura:

fn get_user_info() -> (String, i32, String)

Dentro da função, crie as seguintes variáveis:

  • name: uma String inicializada como "Bob"
  • age: um i32 inicializado como 25
  • email: uma String inicializada como "bob@example.com"

Retorne esses três valores como uma tupla.

Na função main, chame get_user_info e desestruture a tupla retornada em variáveis separadas chamadas name, age e email. Em seguida, imprima esses valores no console usando println! no seguinte formato:

Name: [name], Age: [age], Email: [email]

Experimente você mesmo

fn get_user_info() -> (String, i32, String) {
    // Crie as variáveis de nome, idade e e-mail aqui
    
    
    // Retorne a tupla
    
}

fn main() {
    // Chame get_user_info e desestruture a tupla retornada
    
    
    // Imprima os valores
    
}
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Fundamentals

Pratique por conta própria: Compilador de Rust online