Przeładowanie funkcji
Ostatnio zmodyfikowano 2012-08-28 22:14
diego997 Temat założony przez niniejszego użytkownika |
Przeładowanie funkcji » 2012-08-28 21:34:42 Nie wiem jak to wyjaśnić napisze co chcę zrobić. Mam dwie funkcję: int isEnabled(); int isEnabled();
I chcę w zależności od przesłanego parametru uruchomić którąś z nich tyle że chciałbym aby jako parametr przesyłać np: _JEDEN_ i _DWA_. i w zależności od tego wykona się któraś funkcja :D Da się tak ? |
|
Mrovqa |
» 2012-08-28 21:37:43 int funckja( int a ); int funckja( double b );
Przy przeładowaniu nazwy funkcji liczą się argumenty. Jeżeli jest inna kolejność argumentów lub zupełnie inna lista - to są to dwie, zupełnie inne funkcje :) Typ zwracany nie bierze się pod uwagę. Sprawa jest taka - jesteś kompilatorem, widzisz wywołanie i starasz się jednoznacznie określić, która funkcja się wywoła. Jeśli jesteś w stanie - to wolno tak zrobić ;) |
|
diego997 Temat założony przez niniejszego użytkownika |
» 2012-08-28 21:47:52 Albo inaczej bo w bibliotece sfml jest taka metoda: sf::Keyboard::isKeyPressed( sf::Keyboard::X );
Możecie mi powiedzieć jak to jest zrobione ? |
|
SeaMonster131 |
» 2012-08-28 21:52:33 Zapewne coś w tym guście: bool klawisz( int kl ) { if( kl.wcisniety ) return true; return false; }
|
|
cyklopek11 |
» 2012-08-28 22:10:56 diego997 chodzi ci chyba o funkcję przyjmującą jako parametr enum czyli coś takiego (to nie jest przeładowanie): enum key { KEY_A, KEY_B, KEY_C };
int isEnabled( key var );
wywołanie: isEnabled( KEY_A ); isEnabled( KEY_B );
itd.
O to ci chodzi? |
|
diego997 Temat założony przez niniejszego użytkownika |
» 2012-08-28 22:14:38 @cyklopek11 Tak dzieki :DD
Sory ze nieodpowiednio pytanie sprecyzowalem |
|
« 1 » |