Curs C++ | Sectiunea 20 – Functii (Parametri Default)
Sa presupunem ca avem o functie logger ce va afisa mesajele noastre conform tipului de mesaj.
💡 Vom avea nevoie de doi parametri, unul fiind mesajul si al doilea fiind tipul de informatie. Suntem fortati, in modul in care este construita functia, sa o invocam de fiecare data cu toate informatiile si acest lucru poate fi redundant uneori. Aici apare notiunea de parametru default.
Parametri default
Ne-am dorit sa nu mai specificam de fiecare data tipul mesajului, sa fie setat pe optiunea Info. Acest lucru il facem foarte simplu in felul urmator:
❓ V-ati putea intreba acum daca este posibil sa avem mai mult de un parametru default. Raspunsul este da, iar functia si invocarea vor arata astfel:
❗ Mecanismul dupa cum puteti vedea este destul de simplu, trebuie totusi sa nu uitam de urmatoarele aspecte:
- ordinea parametrilor este foarte importanta, astfel ca este indicat sa specificam mai intai parametrii non-default iar apoi pe cei default, in ordinea in care sunt trecuti in protototipul functiei; in caz contrar compilatorul nu va putea sa identifice parametrii
- daca mai mult de un parametru este declarat cu valoare default si cel putin un parametru efectiv este specificat in invocare, valorile sunt asignate in ordinea in care sunt listate in declararea functiei
Va recomand sa va mai jucati putin cu aceste notiuni pentru a intelege mai clar cum functioneaza 😉 . Ca o mic exercitiu, puteti incerca sa faceti logger-ul nostru mai eficient (va dau un hint, folositi enum).
Aici se termina si aceasta sectiune, desi este una foarte scurta, am considerat ca este mai bine sa fie separata de restul lucrurilor discutate si pe care le vom discuta 🙂 . Pentru alte intrebari suplimentare, puteti folosi informatiile de aici.
➡ Sectiunea anterioara:Curs C++ | Sectiunea 19 – Functii (Transmitere de parametri)
➡ Sectiunea urmatoare:Curs C++ | Sectiunea 21 – Functii Inline

