Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

[Problem] Składnia funkcji


Rekomendowane odpowiedzi

Opublikowano

Witam ucze się od zera do gier kodera i stanołem na temacie składnia funkcji nie rozumiem tego np

typ_zwracanej_wartości/void nazwa_funkcji([typ_parametru nazwa, ...])

{

instrukcje_1

return wartość_funkcji_1;

instrukcje_2

return wartość_funkcji_2;

instrukcje_3

return wartość_funkcji_3;

...

return wartość_funkcji_n;

}

oco w tym chodzi jak ktoś mógł by mi wytłumaczyc ten temat to był bym wdzięczny i oczywiście dostaniecie like za pomoc

x

Opublikowano

Nie wiem czemu jest to tak dziwnie tam wytłumaczone.

Przykład funkcji:

To jest ukryta treść, proszę
Typ zwracany (lub void) znajduje się przed nazwą funkcji. W liście parametrów podaje się jakiego typu wartości dana funkcja przyjmuje. Nadaje się też im nazwe. Do funkcji ZAWSZE przekazywane są kopie obiektów/zmiennych. Chyba, że przekazuje się przez referencję.

 

W ciele funkcji można wykonywać różne instrukcje.

 

Każda funkcja zwracająca coś innego niż void powinna mieć przynajmniej jeden return z poprawną wartością.

keyword return służy do wyjścia z ciała funkcji, powrotu do miejsca wywołania i 'wstawienia' w nie wartości zwracanej (wyrażenia stojącego po prawej stronie return) (lub niczego, można dać return w funkcji typu void).

Zwracane są również kopie obieków/zdmiennych, chyba, że użyje się referencji

W powyższym kodzie zostanie zwrócona kopia zmiennej x.

Funkcja może mieć dużo 'końców'

To jest ukryta treść, proszę
Jak chcesz więcej informacji to

To jest ukryta treść, proszę

Opublikowano

no dobra powiecmy że troche bardziej to rozumiem ale oco chodzi z tymi słowami break switch while doczego one złuża w c++ :) sorka ale dopiero zaczynam a dla sopelka leci like oczywiście

x

Opublikowano
Opublikowano
To jest ukryta treść, proszę

Tutaj mamy zmienną typu int, czyli funkcja zwraca wartość całkowitą.

Funkcja nazywa się Zbigniew, gdyż taka była moja wola.

Zbigniew przyjmuje dwa argumenty: arg1 i arg2, czyli przy wywoływaniu funkcji te argumenty musisz podać, np:

To jest ukryta treść, proszę

Tutaj arg1 jest równy 7, a arg2 jest równy 1.

Zmienna typu int o nazwie CiociaKrysia przyjmuje wartość zwracaną przez Zbigniewa.

Wykonywane są takie akcje:

CiociaKrysia prosi Zbigniewa o jakąś wartość i daje mu dwa argumenty.

Zbigniew myśli i zwraca zmiennej CiociaKrysia wynik odejmowania tych argumentów (arg1 - arg2).

Odtąd CiociaKrysia będzie miała wartość 6 (wynik odejmowania 7 - 1).

 

Te działania w programie nie są wykonywane w taki sposób, ale rezultat jest ten sam.

Mam nadzieję, że pomogłem ;)

userbar.png
Opublikowano

Dobra od poczatku.

 

Kiedy uzywamy funkcje?

 

Kiedy mozemy wyodrebnic pewna czynnosc/czynnosci, ktore moga byc powtarzane w programie lub zapewnienie pewnej generycznosci.

 

Przykladowo:

 

 

To jest ukryta treść, proszę

 

Teraz jak budujemy funkcje?

 

 

To jest ukryta treść, proszę

 

Zwracac mozemy:

 

- typy podstawowe (int, char, float, double)

- obiekty klas(string,vector,list)

- nic(void)

 

 

To jest ukryta treść, proszę

 

Mamy tutaj 2 funkcje o identycznej nazwie. Takie dzialanie nazywamy przeciazaniem funkcji. Funkcje musza sie tutaj roznic typami argumentow lub ich iloscia. Mozemy rowniez zmieniac zwracany typ danych z funkcji.

 

Prosty kawalek kodu dla zobrazowania.

 

 

To jest ukryta treść, proszę

 

Masz tutaj 2 funkcje ktore przyjmuja 2 wartosci calkowite i zwracaja wartosc calkowita. Jest rowniez funkcja ktorej jedynym zadaniem jest wypisac cos na ekran, wiec nie zwraca nic.

Opublikowano

Jeśli on nie rozumie podstawowych pojęć po przeczytaniu funkcji, to wątpię by dalej było mu łatwiej, jak dojdą klasy, dziedziczenie, wyjątki, szablony i inne duperele.

Kup może jakąś dobrą książkę lub ogarnij lepszy kurs, skoro tego nie rozumiesz.

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...