Która deklaracja w C++ pasuje do funkcji ZWRACAJĄCEJ wynik potęgowania i przyjmującej dwa argumenty (liczbę x i wykładnik w)?
Źle. Tylko jeden argument - brakuje wykładnika.
Źle. Trzy argumenty i brak zwracanej wartości (
void).Dobrze. Dwa argumenty i typ zwracany
int (zwraca wynik).Źle.
void oznacza, że funkcja NIC nie zwraca.Funkcja ma ZWRACAĆ wynik, więc typ zwracany nie może być
void - tu pasuje int. Przyjmuje DWA argumenty (liczbę x i wykładnik w), czyli int potega(int x, int w). Dlatego poprawna deklaracja to int potega(int x, int w);.int potega(int x) przyjmuje tylko jeden argument, a potrzebne są dwa. Deklaracje z void nic nie ZWRACAJĄ, więc nie pasują do funkcji zwracającej wynik. Wariant z trzema argumentami dokłada zbędny parametr zamiast zwracać wynik. Pasuje int potega(int x, int w);.