[Lekcja 24] Przekazywanie argumentów funkcji przez referencję Praca Domowa
Ostatnio zmodyfikowano 2014-12-26 21:34
kuba610 Temat założony przez niniejszego użytkownika |
[Lekcja 24] Przekazywanie argumentów funkcji przez referencję Praca Domowa » 2014-12-26 18:38:10 Mam pewien problem, otóż w pracy domowej z rozdziału 24 należy poeksperymentować z programami dodając i zabierając symbol referencji w argumentach funkcji . Gdy w programie drugim zabiorę symbol referencji w argumencie funkcji, to liczba podana jest inna, niż ta, którą rzeczywiście podałem. Nie wiem dlaczego tak się dzieje. Proszę o pomoc Program drugi: #include <iostream>
bool wczytaj_liczbe( int & liczba ) { std::cin.clear(); std::cin.sync(); std::cin >> liczba; return std::cin.good(); }
int main() { int x; do { std::cout << "Podaj liczbe: "; } while( wczytaj_liczbe( x ) == false ); std::cout << "Liczba podana to: " << x << std::endl; return 0; }
|
|
Mateus. |
» 2014-12-26 20:34:59 W funkcji (argument bez referencji) pracujesz na kopii obiektu, czyli tak jakby na nowej zmiennej z przesłaną jej wartością początkową. Przy referencji pracujesz na zmiennej x, ale nazwaną inaczej (coś jak przezwisko). |
|
kuba610 Temat założony przez niniejszego użytkownika |
» 2014-12-26 21:34:37 Dobra, już rozumiem( po jakimś 20 razie wczytaniu się w to co napisałeś :D). Wielkie Dzięki. Temat zamykam |
|
« 1 » |