Skillnad mellan versioner av "Kap 8 Klasser (22)"
Taifun (Diskussion | bidrag) m |
Taifun (Diskussion | bidrag) m |
||
Rad 33: | Rad 33: | ||
− | |||
<div class="ovnC"> | <div class="ovnC"> | ||
=== <b><span style="color:#931136">Inkapsling och dess problematik</span></b> === | === <b><span style="color:#931136">Inkapsling och dess problematik</span></b> === | ||
Rad 48: | Rad 47: | ||
− | = <b><span style="color:#931136"> | + | = <b><span style="color:#931136">1.5 Klassens konstruktor</span></b> = |
<div class="border-divblue"> | <div class="border-divblue"> | ||
<big> | <big> | ||
− | <b>Konstruktorn</b> är en speciell [[Kap_8_Klasser_(22)#Konstruktorns_tre_egenskaper|<b><span style="color:blue">metod med tre egenskaper</span></b>]]<br>vars uppgift är att initiera klassens privata datamedlemmar. | + | <b>Konstruktorn</b> är en speciell [[Kap_8_Klasser_(22)#Konstruktorns_tre_egenskaper|<b><span style="color:blue">metod med tre egenskaper</span></b>]]<br> som |
+ | är publik och vars uppgift är att initiera klassens privata datamedlemmar. | ||
Versionen från 24 oktober 2023 kl. 13.08
Innehåll
Ons 25 okt, kl 9-12
<< Agenda | Genomgång 22 | Övningar 22 | Planering | Nästa lektion >> |
8.3 Inkapsling
Åtkomstmodifieraen private
Inkapsling och dess problematik
Lösningen:
Man använder publika metoder för att via dem komma åt klassens privata datamedlemmar.
En av dessa metoder är klassens konstruktor.
1.5 Klassens konstruktor
Konstruktorn är en speciell metod med tre egenskaper
som
är publik och vars uppgift är att initiera klassens privata datamedlemmar.
Konstruktorn finns by default i alla klasser, men man kan även
definiera den själv i klassen. Se exemplet nedan:
Exempel: Klassen Circle med konstruktor
Programmet Encapsulation
Klassen Circle:s datamedlem radie är oåtkomlig här p.g.a. åtkomstmodifieraren private.
Men vi kan initiera den med input via den publika metoden CircleConstr() dvs klassens konstruktor.
Körexempel
Konstruktorns tre egenskaper
Default konstruktorn
Alla klasser i C++ har automatiskt en default konstruktor som
initierar klassens datamedlemmar till default värden, dvs till 0
om de är tal, till nolltecknet om dem är tecken och till tom sträng om de är strängar.
Default konstruktorn sätts ur funktion endast om man definierar en egen konstruktor.
Gå vidare till: när du är klar med denna genomgång.
Copyright © 2023. All Rights Reserved.