Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Referencja jako wartość zwracana przez funkcje

Ostatnio zmodyfikowano 2020-02-08 08:54
Autor Wiadomość
studentAir
Temat założony przez niniejszego użytkownika
Referencja jako wartość zwracana przez funkcje
» 2020-02-07 11:54:50
Co oznacza znak '&' po nazwie typu i przed nazwa funkcji?

np. tak: int& funkcja(int);
P-176189
nanoant20
» 2020-02-07 12:59:37
najpierw może prosty przykład
C/C++
#include <iostream>

using namespace std;

int & fun1()
{
    static int x = 10;
    return x;
}
int fun2()
{
    static int x = 10;
    return x;
}
int main()
{
    fun1() = 20;
    cout << fun1();
   
    cout << "" << endl;
   
    //fun2() = 20; //Compiler Error
    cout << fun2();
   
    getchar();
    return 0;
}
wyjaśnienie:
Referencje jako wartości zwracane funkcji

P-176191
DejaVu
» 2020-02-07 13:08:59
C/C++
int funkcja1(); // funkcja zwracająca kopię wartości liczbowej
int * funkcja2(); //funkcja zwracająca wskaźnik na zmienną liczbową
int & funkcja3(); //funkcja zwracająca referencję na zwracaną zmienną tj. na oryginalne miejsce w którym przechowywana jest wartość.

Innymi słowy: jak zwracasz zmienną przez referencję to de-facto dajesz bezpośredni dostęp do zmiennej, którą wpisałeś za słowem kluczowym return.
P-176192
studentAir
Temat założony przez niniejszego użytkownika
» 2020-02-08 08:54:58
Dzieki, chyba rozumiem nareszcie :)  Czytalem to na tej stronce wczesniej ale tam nie ogarnalem o co chodzi
P-176196
« 1 »
  Strona 1 z 1