Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda Retornar Tipos de Dados Personalizados | Especificação de Valores de Retorno de Função
Funções em C++

Retornar Tipos de Dados Personalizados

Deslize para mostrar o menu

É possível retornar estruturas e classes personalizadas a partir de funções. Ao retornar uma instância de uma struct ou classe de uma função, você está essencialmente retornando uma cópia do objeto (da mesma forma que ao retornar tipos de dados simples).

Isso permite encapsular dados e comportamentos relacionados dentro de uma única estrutura ou instância de classe, repassá-la entre funções ou utilizá-la em diferentes partes do seu programa.

Para retornar uma estrutura/classe, é necessário usar o nome da estrutura/classe como especificador de tipo na assinatura da função.

main.cpp

main.cpp

1234567891011121314151617181920212223
#include <iostream> // Define a custom structure called Person struct Person { std::string name; int age; }; // Function that returns a Person object Person create_person(const std::string name, const int age) { return Person { name, age }; } int main() { // Call the function to create a Person object Person person = create_person("Alice", 30); // Access and print the attributes of the returned Person object std::cout << "Name: " << person.name << std::endl; std::cout << "Age: " << person.age << std::endl; }

Este código define uma estrutura personalizada Person com dois campos: name e age. A função create_person() cria e retorna um objeto Person inicializado com os valores fornecidos. Em main(), a função é chamada para criar uma instância de Person, e os detalhes do objeto são exibidos no console.

question mark

Qual assinatura de função retorna corretamente um objeto da estrutura Person?

Selecione a resposta correta

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 3. Capítulo 3

Pergunte à IA

expand

Pergunte à IA

ChatGPT

Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo

Seção 3. Capítulo 3
some-alt