Bonjour,
Dans ce code mon compilo ne me dit rien alors qu'il devrait m'interdire cette manière?!

Je stocke les références d'objets temporaire dans une liste.

Mission.h
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
#include "Date.h"
#include "Time.h"
 
class Mission {
public:
        Mission( const Date& date, const Time& time ) : date( date ),
                                                        time( time ) {
        }
 
private:
        const Date& date;
        const Time& time;
};
main.cpp
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include "Mission.h"
#include <list>
 
int main()
{
        std::list < Mission > mission;
 
        if( 1 ) {
                Date date( 1, 1, 2000 );
                Time time( 2, 30 );
 
                mission.push_back( Mission( date, time ));//Nouvelle mission avec les adresses de date et time
 
        }//Les instances Time et Date sont censées ce détruire ici ?!
 
        return 0;
}
Les références "sauvegardent" t-elles les objets en mémoire ? (!!Les références évitent les copies!!??)

Ou bien mes références continuent d'exister le temps que leur emplacement en mémoire reste non modifié ?

Ou je ne sais quoi ..

Merci d'avance !