Steg 4

Under Steg 1 – Steg 3 har vi redan använt funktioner, både standardfunktioner som definieras i inbyggda C++ bibliotek och vissa egendefinierade funktioner. De senare enligt en enklare modell som i andra språk ofta kallas procedurer, d.v.s. void-deklarerade funktioner (= utan returvärde). I Steg 4 gör vi nu en grundlig genomgång av funktionsbegreppet samt introducerar alternativ och villkor för dataöverföring mellan funktioner och program.

Steget omfattar teorin från kursbokens kapitel 7: Functions, Part One: The Fundamentals (sid. 127-156) och kapitel 8: Functions, Part Two: References, Overloading, and Default Arguments (sid. 157-179).

Instudering

Sid. 128-141 ger viktiga grundkunskaper om funktioner, som ska behärskas.
Avsnitten argc and argv: Arguments to main() samt Passing Numeric Command Line Arguments (141-144) kan studeras översiktligt.
Sid. 145-153 är likaså viktiga funktionsbegrepp att kunna, medan avsnittet Recursion (153-156) är tillräckligt att läsa översiktligt.
Sid. 158-163 behandlar värdeparametrar och referensparametrar, vilket är av stor vikt att du förstår, för att fullständigt behärska funktionsbegreppet.
Avsnitten om specialfall av referenshantering, från Returning References t.o.m. A Few Restrictions… (164-169) är valfri läsning.
Sid. 170-179, introducerar Överlagrade funktioner och funktioner med defaultvärden. Detta är betydelsefullt för den senare Objektorienterade fortsättningskursen i C++, så läs detta noggrant.

Mål

Efter Steg 4 ska du förstå hur funktioner används för att strukturera stora program logiskt och överskådligt. Du ska med hjälp av funktioner kunna visa hur man delar upp programuppgifter i mindre oberoende delar, så att koden utnyttjas effektivt. Därmed ska du också känna till på vilka villkor dataöverföring sker mellan program och funktioner, framförallt via returvärden.

Du ska kunna visa en varierad användning av funktionsparametrar, såsom olika typer av variabler, arrayer, strängar, strukturer och pekare, samt förstå de väsentliga skillnaderna mellan värdeparametrar och referensparametrar. I detta sammanhang ska villkor för globala och lokala variabler kunna tillämpas. Detta innefattar kunskap om hur deklarationsområde och räckvidd styr överföring av data till och från funktioner eller inom olika block i en funktion. Avslutningsvis kommer du att ha grundläggande kännedom om hur överlagrade funktioner och defaultparametrar kan utnyttjas för att åstadkomma en flexibel programkod.

Innehåll

Moment och begrepp som tas upp:

  • Utvecklingsmodell
    • funktioners betydelse för strukturerad programmering
  • Deklarationsområde och räckvidd
    • lokala variabler – globala variabler
  • Grundläggande funktionsbegrepp
    • funktionsdeklaration – funktionsdefinition – returvärde alt. void-funktioner
  • Parametrar
    • värdeparametrar – referensparametrar – default-parametrar
  • Överlagrade funktioner

Praktisk tillämpning

Steget har 12 laborationsuppgifter, bland vilka du gör lämpliga val för att uppnå 6 poäng (minimikrav för godkänt laborationsmoment). Observera att uppgift 1 är obligatorisk.

Välkommen till CoursePress

en utav Linnéuniversitets lärplattformar. Som inloggad student kan du kommunicera, hålla koll på dina kurser och mycket mer. Du som är gäst kan nå de flesta kurser och dess innehåll utan att logga in.

Läs mer lärplattformar vid Linnéuniversitetet

Studentkonto

För att logga in behöver du ett studentkonto vid Linnéuniversitet.

Läs mer om att hämta ut studentkonto

Inloggning LNU