C++/Różnice między C a C++: Różnice pomiędzy wersjami
Usunięta treść Dodana treść
→Funkcje: uzupełnienie |
→Funkcje: rozwinięcie |
||
Linia 66:
Należy też pamiętać, że odróżnianie argumentu w nawiasach od typu w nawiasach źle działa w przypadku obiektów tymczasowych:
Klasa1 obiekt( Klasa2() );
które, wbrew pozorom, nie deklaruje obiektu klasy Klasa1 z podaniem obiektu tymczasowego typu Klasa2 do konstruktora, lecz deklaruje funkcję o nazwie 'obiekt', która przyjmuje funkcję (bezparametrową, zwracającą Klasa2) i zwraca typ Klasa1.
Klasa1 o1( Klasa2 funkcja() ); // funkcja (przyjmująca funkcję)
Klasa1 o2( Klasa2 (int) ); // funkcja (przyjmująca funkcję)
Klasa1 o3( Klasa2 ); // obiekt (z podaniem tymczasowego obiektu)
Klasa1 o4( Klasa2 (10) ); // obiekt (z podaniem tymczasowego obiektu, z podaniem wartości)
=== Manglowanie nazw funkcji ===
|