Różnica między "int** tmp", a "int*& tmp"
Ostatnio zmodyfikowano 2014-09-24 12:30
fokusx Temat założony przez niniejszego użytkownika |
Różnica między "int** tmp", a "int*& tmp" » 2014-09-21 15:50:30 Jaka jest różnica między "int** tmp", a "int*& tmp".
Z tego co pamiętam, to int** tmp używałem tak samo jak int*& tmp...
|
|
pekfos |
» 2014-09-21 16:07:02 Z tego co pamiętam, to int** tmp używałem tak samo jak int*& tmp... |
Podaj przykład. |
|
DejaVu |
» 2014-09-21 16:21:33 efekt można ten sam uzyskać choć zapisy użycia będą zupelnie inne... |
|
b00rt00s |
» 2014-09-24 12:30:14 Po kolei: 1. int* to typ zmiennej, która przechowuje (jej wartością jest) adres zmiennej typu int. Nazywa się to wskaźnik na na zmienną. 2. int** to innymi słowy wskaźnik na zmienną typu int*. Jej wartością jest adres zmiennej typu int*. 3. int& to referencja na zmienną typu int. Zachowuje się jak stały wskaźnik ( int * const ) na zmienną typu int, lecz ze zmienionym operatorem wyłuskania i bez operatora dereferencji. 3. int*& to referencja na zmienną typu int*. Popatrz na ten kod: #include <iostream>
int main() { using namespace std; int zmienna = 44; int * wskaznik_na_zmienna = & zmienna; int ** wskaznik_na_wskaznik = & wskaznik_na_zmienna; int *& referencja_na_wskaznik = wskaznik_na_zmienna; cout << "zmienna:" << endl << zmienna << ": wartosc zmiennej" << endl << endl; cout << "wskaznik na zmienna:" << endl << wskaznik_na_zmienna << ": adres zmiennej" << endl << endl; cout << "wartosc zmiennej wskazywanej przez wskaznik " << endl <<* wskaznik_na_zmienna << ": wartosc zmiennej" << endl << endl; cout << "wskaznik na wskaznik " << endl << wskaznik_na_wskaznik << ": adres wskaznika na zmienna" << endl << endl; cout << "wartosc zmiennej wskazywanej przez wskaznik na wskaznik " << endl <<* wskaznik_na_wskaznik << ": adres zmiennej!" << endl << endl; cout << "referencja na wskaznik " << endl << referencja_na_wskaznik << ": znowu adres zmiennej!" << endl << endl; cout << "wartość zmiennej wskazywanej przez referencję na wskaznik " << endl <<* referencja_na_wskaznik << ": znowu wartosc zmiennej!" << endl; } Przeanalizuj go, to zrozumiesz o co chodzi. |
|
« 1 » |