Advanced C++ (3op)
Opintojakson tunnus: LUD2009
Opintojakson perustiedot
- Laajuus
- 3 op
- Opetuskieli
- englanti
- Vastuuhenkilö
- Anssi Gröhn, Vastuuopettaja
Osaamistavoitteet
Tavoitteet:
Osaat käsitellä virheitä poikkeusten avulla
Osaat kirjoittaa oman poikkeusluokan
Osaat lukea ja kirjoittaa tekstitiedostoja tiedostovirtojen avulla
Osaat lukea ja kirjoittaa binääritiedostoja tiedostovirtojen avulla
Tiedät kuinka hyödyntää stringstream-luokkaa string-olioiden muodostamisessa
Tiedät kuinka hyödyntää syöte-stringstream-luokkaa merkkijono-arvomuunnoksissa
Tiedät mitä operattoreiden ylikuormitus tarkoittaa
Osaat ylikuormittaa aritmeettisia operaattoreita
Osaat ylikuormittaa taulukkoindeksioperaattorin
Osaat ylikuormittaa syöte- ja tulostusoperaattoreita
Osaat ylikuormittaa kasvatus- ja vähennysoperaattoreita
Ymmärrät kopiomuodostinten tärkeyden kun sijoitusoperaattoria ylikuormitetaan
Tiedät mikä friend-avainsana on
Osaat määritellä luokalle ystäväluokan
Osaat määritellä jäsenfunktion toisen luokan ystäväksi
Ymmärrät mitä templaatit ovat ja kuinka niitä luodaan
Osaat kirjoittaa templaatti-funktioita ja -luokkia joissa on useita templaatti-parametreja
Osaat kirjoittaa osittain erikoistettuja templaatteja
Osaat kirjoittaa täysin erikoistettuja templaatteja
Osaat periä tavallisen luokan templaatti-luokasta
Osaat periä templaattiluokkia toisistaan.
Tiedät mitä säiliöluokkia STL tarjoaa
Tiedät kuinka iteraattoreita käytetään
Osaat käyttää lista-säiliöluokkaa
Osaat käyttää map-säiliöluokkaa
Osaat käyttää jono-säiliöluokkaa
Osaat käyttää pino-säiliöluokkaa
Osaat käyttää vektoreita
Osaat soveltaa STL:n algoritmeja omissa ohjelmissasi
Tiedät mitä algoritmeja STL tarjoaa
Osaat käytää funktio-objektisovittimia
Osaat käyttää älykkäitä osoittimia
Osaat käyttää typeinfo-mekanismia
Tiedät kuinka auto-tyyppi toimii
Tiedät kuinka auto-tyyppiä käytetään
Tiedät kuinka yhdenmukainen alustussyntaksi auttaa koodin kirjoittamisessa
Osaat käyttää yhdenmukaista alustussyntaksia koodissasi
Tiedät kuinka lambda-lausekkeet toimivat
Osaat käyttää lambda-lausekkeita koodissasi
Sisältö
Sisältö:
Koodikirjastojen luonti ja käyttö
Tietovirrat
Tiedostojen käsittely
Moniperintä
Templaatit
C++-standardikirjasto (STL)
C++11:sta uudet ominaisuudet