Menu
Coddy logo textTech

Múltiplos Valores de Retorno

Parte da seção Fundamentos 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 retorne 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 com "Bob"
  • age: um i32 inicializado com 25
  • email: uma String inicializada com "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 Fundamentos

Pratique por conta própria: Compilador de Rust online