Olen kirjoittanut ohjelmaa, jossa autolle on tehty luokka "auto". Ajattelin kokeilla värejä luettelutyyppisinä (enum) seuraavasti:
enum vari {musta, valkoinen,
sininen, punainen};
Pulmana on siis värin alustaminen konstruktorissa mustaksi (Käyttäjä vois myöhemmin muutella). Meneekö se koodi tällain:
auto::auto()
{
... //Muuta koodia
vari {musta};
... //Muuta koodia
}
Jos ei mene noin niin miten sen saa?
Luettelujen alustaminen konstruktorissa?
3
303
Vastaukset
- RKM
enum vari {musta, valk}; esittelee vasta enum-tyypin.
muuttuja pitää esitellä:
vari auton_vari;
ja arvo asetetaan:
auton_vari = musta;- Alustus kuntoon
Tiedän, että muuttuja pitää esitellä pääohjelmassa, mutta esitelläänkö muuttuja myös sovellustiedostossa, jossa on konstruktorin koodi?
Tämä juttu on jäänyt hieman epäselväksi. - RKM
Alustus kuntoon kirjoitti:
Tiedän, että muuttuja pitää esitellä pääohjelmassa, mutta esitelläänkö muuttuja myös sovellustiedostossa, jossa on konstruktorin koodi?
Tämä juttu on jäänyt hieman epäselväksi.Luokan esittelyyn muuttuja, ja enum-tyypin esittely pitää sitä ennen olla esitelty jossakin, esim. auto.h-tiedostoon:
---
enum VARI {MUSTA, PUNAINEN};
class Auto {
public:
Auto();
virtual ~Auto();
private:
VARI vari;
};
---
ja auto.cpp
---
#include "auto.h"
Auto::Auto() {
vari = MUSTA;
}
...
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
- 1077773
Siekkilässä ajettu ihmisten yli- mitä tapahtui? Länsi-Savo ei ole uutisoinut asiata
Manneja, vaiko matuja?1126036- 835187
- 1394546
Alavuden sairaala
Säästääkö Alavuden sairaala sähkössä. Kävin Sunnuntaina vast. otolla. Odotushuone ja käytävä jolla lääkäri otti vastaan113230- 633014
- 582948
Törkeää toimintaa
Todella törkeitä kaheleita niitä on Ylivieskassakin. https://www.ess.fi/uutissuomalainen/8570818102454- 612437
Hei........
Pelkkä sun näkeminen saa mut hymyilemään pitkin iltaa. Oot niin 🤩😘 Edellinen poistettiin.562066