Twoje Centrum Szkoleniowe

Nauczmy się dziś czegoś nowego!

Kurs programowania - C++

C++: Wartość zwracana przez funkcję

Wartość zwracana przez funkcję pozwala na przekazanie wyniku operacji wykonanej wewnątrz funkcji do zewnętrznych części kodu.

 

Jakie typy danych mogą być zwracane

Proste typy wbudowane

Najczęściej używane typy zwrotne to typy wbudowane jak int dla liczb całkowitych, double dla liczb zmiennoprzecinkowych, bool dla wartości logicznych, czy char dla pojedynczych znaków.

 

Struktury i klasy

Funkcja może zwracać złożony obiekt danych takie jak typy zdefiniowane przez struktury lub klasy.

 

Wskaźniki i referencje

Dla bardziej zaawansowanych zastosowań, funkcje mogą zwracać wskaźniki (int*, Student*) lub referencje (int&, Student&). Jest to szczególnie przydatne, gdy chcemy modyfikować dane przekazane do funkcji lub gdy musimy obsługiwać duże obiekty, gdzie przekazywanie kopii byłoby nieefektywne.

 

Typ void

Specjalnym przypadkiem jest void, który oznacza brak wartości zwrotnej. Funkcje typu void są używane, gdy chcemy, aby funkcja wykonała określone zadanie, ale nie potrzebujemy od niej żadnych danych wyjściowych.

 

Instrukcja return

Podstawowa forma instrukcji return wygląda następująco: return wyrażenie;, gdzie wyrażenie jest wartością lub zmienną, którą funkcja ma zwrócić. Może to być prosta wartość, jak liczba, lub bardziej złożony obiekt.

Typ wyrażenia zwracanego przez instrukcję return musi zgadzać się z deklarowanym typem zwrotnym funkcji. Jeśli funkcja deklaruje, że zwróci int, to return musi zwracać wartość typu int.

Gdy wykonanie programu osiąga instrukcję return, funkcja jest natychmiast kończona, a sterowanie programu powraca do miejsca wywołania funkcji z wartością określoną w return.

W przypadku funkcji z typem zwrotnym void, instrukcja return może być użyta bez wartości, aby po prostu zakończyć funkcję przedwcześnie. Można też całkowicie pominąć return w funkcjach void.

 

Przykłady:

int suma(int a, int b) {
    return a + b;  // Zwraca sumę dwóch liczb
}

void pokazWiadomosc() {
    std::cout << "Hello World!";
    return;  // Opcjonalne w funkcjach void
}

Pierwszy przykład znamy już doskonale. Program zwraca wartość całkowitoliczbową sumy obliconej na podstawie dwóch parametrów wejściowych, również typu int.

Specjalny typ, void, w drugiej z funkcji, zaznacza, że nie zwróci ona żadnej wartości. Funkcja wypisuje na ekran komunikat. W funkcjach, które nie zwracają wartości można natomiast korzystać z instrukcji return. Sprawia ona, że funkcja zostaje natychmiast zakończona.

Testy przypięte do lekcji
Aby uzyskać dostęp do testów i ćwiczeń interaktywnych - Zaloguj się
Aby widzieć ocenę lekcji - Zaloguj się