Bonjour.

j'ai encore une question de compréhension...
dans mon fichier main.cpp
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
#include <iostream>
#include <cassert>
#include <vector>
#include <limits>
#include <algorithm>
#include <fstream>
#include <sstream>
#include "disco_tests.hpp"
#include "disco_donnees.hpp"
#include "disco_manipulation.hpp"
...
dans mon fichier disco_tests
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
#include <string>
#include <cassert>
...
dans mon fichier disco_donnees.hpp
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
#include <iostream>
#include <vector>
...
dans monfichier disco_manipulation.hpp
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
#include <vector>
#include <string>
#include "disco_donnees.hpp"
...
Je me suis dit "Puisque disco_donnees.hpp est déjà inclus dans discotheque.cpp avant disco_manipulation.hpp, je peux enlever le include dans disco_manipulation.hpp."
Mais le compilateur n'apprécie pas du tout.

Je comprends que, si je compile disco_manipulation "tout seul", il faille inclure disco_donnees.hpp, mais pourquoi le compilateur en a-t-il besoin lorsque je compile discotheque.cpp ?

Quelle est mon erreur de raisonnement ?

Olivier