C++ Nybörjarguide

Tillbaka till artikelarkivet

Filer

Verktyg

Kommentarer (100)
Utskriftsvänligt format

Betyg

markedunmaked 7.6

Detta är en grundläggande guide i C++. Den förklarar hur man kommer igång med kompilatorn samt grundläggande användning av C++. Guiden är ett bra ställe att börja på om du aldrig programmerat förut.
Guiden gick igenom en större uppdatering i Oktobker 2006, nästan all text är uppdaterad och förbättrad!

Navigation:

< Föregående del || Nästa del >

Text - 13 - Funktioner med referenser

Funktioner med referenser


Den här delen kommer handla om hur man använder referenser för att ändra värdet på de riktiga variablerna i funktioner, hur man gör för att inte bara kopiera variabeln till funktionen alltså. Så om man skickar en variabel som argument så kommer denna variabel ha ändrat värde även efter koden där funktionsanropet gjordes.

Här kommer ett exempel:

  1.  
  2. #include<iostream>
  3.  
  4. using std::cout;
  5. using std::cin;
  6.  
  7. void kvadrat(int &tal);
  8.  
  9. void kvadrat(int &tal)
  10. {
  11. tal = tal * tal;
  12. return;
  13. }
  14.  
  15. int main ()
  16. {
  17. int tal;
  18.  
  19. cout << "Skriv in ett tal:\n";
  20. cin >> tal;
  21. kvadrat(tal);
  22.  
  23. cout << "Kvadraten av detta tal blir: " << tal << "\n";
  24.  
  25. return 0;
  26. }


Det här programmet frågar användaren efter ett tal, skickar sedan detta talet till funktionen kvadrat som tar kvadraten på värdet (talet multiplicerat med sig själv).

Istället för att returnera ett värde så ändrar vi värdet på den riktiga variabeln som används i main. På detta sätt kommer resultatet utav operationen i vår funktion kvadrat att kunna användas även i main-funktionen.

Skillnaden i koden finns då vi deklarerar argumenten/parametrarna till funktionen, då anger vi en ampersand (&-tecken) innan argumentets namn.

Notis: Det finns även en snarlik teknik som heter pekare, som härstammar från C. I C++ finns ju däremot referenser som är mycket säkrare och enklare att använda, därför bör man använda dessa istället.

Slut

Navigation:

< Föregående del || Nästa del >

Till toppen