Je souhaite créer un interpréteur, capable de lire cin ou un fichier, selon un argument de ligne de commande.
Supposons le code suivant
Sauf que cela pose plusieurs problèmes: le istream ne devrait pas être copié, et il doit être modifiable.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 int main(int argc, char*[] argv) { //validation des arguments //sélection du flux istream input = (argc == 1 ? cin : ifstream(argv[1])); int x, y; input >> x >> y; cout << x << " : "<< y << endl; }
Cela correspond assez bien à une référence non constante.
Certes, mais comment l'initialiser, sans créer un ifstream si j'utilise cin?
Partager