Skillnad mellan versioner av "Kap 3 Fortsättning med C Cpp (8)"

Från Mathonline
Hoppa till: navigering, sök
m
m
 
(5 mellanliggande versioner av samma användare visas inte)
Rad 4: Rad 4:
 
{{Not selected tab|[[Lektion 8 (Inbyggd 24)| <<&nbsp;&nbsp;Agenda]]}}
 
{{Not selected tab|[[Lektion 8 (Inbyggd 24)| <<&nbsp;&nbsp;Agenda]]}}
 
{{Selected tab|[[Kap 3 Fortsättning med C_Cpp (8)|Genomgång 8]]}}
 
{{Selected tab|[[Kap 3 Fortsättning med C_Cpp (8)|Genomgång 8]]}}
{{Not selected tab|[[Övningar 8 (Inbyggd 24)|Övningar 8]]}}
 
 
{{Not selected tab|[http://www.mathonline.se/Systemutv_Inb_Syst_Inneh_Struktur.pdf Innehåll & struktur]}}
 
{{Not selected tab|[http://www.mathonline.se/Systemutv_Inb_Syst_Inneh_Struktur.pdf Innehåll & struktur]}}
{{Not selected tab|[[Lektion 9 (Inbyggd 24)|Nästa lektion&nbsp;&nbsp;>> ]]}}
+
{{Not selected tab|[[Lektion 21 (C/Cpp 23)|Nästa lektion&nbsp;&nbsp;>> ]]}}
 +
<!-- {{Not selected tab|[[Lektion 9 (Inbyggd 24)|Nästa lektion&nbsp;&nbsp;>> ]]}} Logik -->
 
| style="border-bottom:1px solid #797979"  width="100%"| &nbsp;
 
| style="border-bottom:1px solid #797979"  width="100%"| &nbsp;
 
|}
 
|}
Rad 36: Rad 36:
  
  
= <b><span style="color:#931136">Två funktioner som heter power()</span></b> =
+
= <b><span style="color:#931136">Två funktioner med samma namn</span></b> =
 
<div class="ovnA">
 
<div class="ovnA">
 
[[Image: power_h.jpg]]
 
[[Image: power_h.jpg]]
Rad 73: Rad 73:
  
 
= <b><span style="color:#931136">3) &nbsp; Överlagring av funktioner (overloading)</span></b> =
 
= <b><span style="color:#931136">3) &nbsp; Överlagring av funktioner (overloading)</span></b> =
 +
 +
== <b><span style="color:#931136">&nbsp; &nbsp; &nbsp; &nbsp; Funktioner med samma namn, men annorlunda parameterlistor.</span></b> ==
 
</small></div>
 
</small></div>
  
 
<br><br>
 
<br><br>
  
<div class="border-divblue">
 
=== <b><span style="color:#931136">Gå vidare till: &nbsp;&nbsp;<div class="smallBox">[[Övningar 8 (Inbyggd 24)|<span style="color:blue">Övningar 8</span>]]</div> &nbsp;&nbsp;&nbsp; när du är klar med denna genomgång.</span></b> ===
 
</div>
 
  
  

Nuvarande version från 27 september 2024 kl. 11.13

        <<  Agenda          Genomgång 8          Innehåll & struktur          Nästa lektion  >>      


3.12   Överlagring av funktioner (overloading)

Overlagringb.jpg

Överlagring av funktioner (eng. overloading) är ett koncept för att koda funktionaliteter som är

besläktade med varandra, men ändå inte identiska.

C++ biblioteket innehåller många överlagrade funktioner.

Även det vanliga språket är fullt av överlagrade ord.

Ex.: Att bromsa en lastbil görs på ett annat sätt än att bromsa en båt. Ändå heter båda "att bromsa".


Signaturen

Signaturenb.jpg


Två funktioner med samma namn

Power h.jpg


Funktionerna power() beräknar potenser på olika sätt, beroende på om

exponenten är heltal eller decimaltal. De överlagrar varandra.


Programmet Overload

Overload.jpg


De tre "Över"s i programmering:

1)   Överskrivning av variabler (overwriting):

        En variabels värde överskrivs av ett nytt värde, t.ex.:\( \; \mathbf{\mathit{{\color{Blue} {x \, = \, x\,+\,1}}}}\).

2a) Överskskuggning av variabler (overriding):

        Lokal variabel överskuggar global variabel med samma namn.

        Ex.: Programmet Scope, kursen Programmering i C och C++ (ht 23).

2b) Överskskuggning av metoder (overriding):

        Metod i en subklass överskuggar superklassens metod med samma namn: Polymorfism.

3)   Överlagring av funktioner (overloading)

        Funktioner med samma namn, men annorlunda parameterlistor.












Copyright © 2024 TechPages AB. All Rights Reserved.