Opgave A: Implementeer Foto* GammaCamera::maakFoto(string)

Opdracht:

Maak een nieuwe GammaFoto met het gegeven onderwerp en een nieuwe positie die gelijk is aan de huidige positie van de camera.

Implementatie:

Foto* GammaCamera::maakFoto(string onderwerp) {
    Positie* nieuwePos = new Positie(*positie); // kopieer de huidige positie
    return new GammaFoto(onderwerp, nieuwePos); // maak nieuwe foto met deze positie
}

Uitleg:


Opgave B: Implementeer bool Scanner::voegCameraToe(string plaats, Camera* camera)

Opdracht:

Voeg een camera toe aan de map cameras met de gegeven plaats als sleutel. Return true als de camera succesvol is toegevoegd, anders false.

Implementatie:

bool Scanner::voegCameraToe(string plaats, Camera* camera) {
    auto resultaat = cameras.insert(make_pair(plaats, camera));
    return resultaat.second;
}

Uitleg:


Opgave C: Implementeer void Scanner::maakOpname(string n)