Skillnad mellan versioner av "Delegater, LINQ och Metodgrupper"

Från Mathonline
Hoppa till: navigering, sök
m
m
Rad 12: Rad 12:
 
<div class="ovnE">
 
<div class="ovnE">
 
[[Image: Delegate_Def.jpg]]
 
[[Image: Delegate_Def.jpg]]
 
<big>
 
Den traditionella kodningen av <b>korta</b> funktioner som metoder, dvs som medlemmar i en klass, medför en overhead av exekveringstid.
 
 
<b><span style="color:red">Lambdauttryck</span></b> är anonyma funktioner som slipper exekveringstiden för parameteröverföring.
 
</big>
 
 
</div>
 
</div>
  
  
= <b><span style="color:#931136">Programmet Lambda</span></b> =
+
= <b><span style="color:#931136">Programmet DelegateParam</span></b> =
 
<div class="ovnC">
 
<div class="ovnC">
[[Image: Lambda.jpg]]
+
[[Image: DelegateParam.jpg]]
 
</div>
 
</div>
  
  
= <b><span style="color:#931136">Körexempel</span></b> =
+
= <b><span style="color:#931136">Programmet CountLINQ</span></b> =
 
<div class="ovnA">
 
<div class="ovnA">
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: LambdaKorex.jpg]]</div>
+
[[Image: CountLINQ.jpg]]
</div>
+
 
+
 
+
= <b><span style="color:#931136">Vad är LINQ?</span></b> =
+
<div class="ovnC">
+
[[Image: LINQ.jpg]]
+
</div>
+
 
+
 
+
= <b><span style="color:#931136">Programmet Delegate</span></b> =
+
<div class="ovnA">
+
[[Image: Delegate.jpg]]
+
  
 
<big>
 
<big>
Rad 56: Rad 38:
 
Namngivningen kan bli nödvändigt, när delegater skickas som parametrar till andra metoder.
 
Namngivningen kan bli nödvändigt, när delegater skickas som parametrar till andra metoder.
 
</big>
 
</big>
</div>
 
 
 
= <b><span style="color:#931136">Körexempel</span></b> =
 
<div class="ovnA">
 
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: DelegateKorexa.jpg]]</div>
 
 
</div>
 
</div>
  
 
<br>
 
<br>
  
= <b><span style="color:#931136">Läs om Lambdauttryck, LINQ och Delegater i kursboken på sid 158-160.</span></b> =
+
= <b><span style="color:#931136">Läs om Delegater, LINQ och Metodgrupper i kursboken på sid 160-165.</span></b> =
  
  

Versionen från 8 april 2021 kl. 18.54

       Lektion 28          Genomgång          Övningar      


Vad är en delegat?

Delegate Def.jpg


Programmet DelegateParam

DelegateParam.jpg


Programmet CountLINQ

CountLINQ.jpg

En delegat skapas i två steg:

1) Utanför Main() skapas en ny datatyp av typen delegate. Ex.: delegate void Dtype(string t);

2) I Main() deklareras en delegat d till den nya delegattypen Dtype. Ex.: Dtype d;

Sedan används delegaten d för att namnge ett lambdauttryck (anonym funktion).

Sist anropas den anonyma funktionen med delegatens namn.

Namngivningen kan bli nödvändigt, när delegater skickas som parametrar till andra metoder.


Läs om Delegater, LINQ och Metodgrupper i kursboken på sid 160-165.


 










Copyright © 2021 TechPages AB. All Rights Reserved.