J'essaie de créer une fonction getIdFromFile dans files.cpp qui prend 3 paramètres : (une chaîne C++ représentant un nom de fichier, un istream et un ostream) et retourne un int.Fonction C++ avec 3 paramètres pour la lecture en entrée binaire générique
Voici le code de départ j'ai:
// files.cpp
#include "files.hpp"
#include <iostream>
#include <fstream>
using std::ofstream;
using std::ifstream;
using std::ostream;
#include <sstream>
using std::string;
using std::stringstream;
using std::istream;
using std::istringstream;
int getIdFromFile (std::string(fileName),std::istream &usersData, std::ostream theStream){
&usersData.open(fileName, std::ios::in|std::ios::binary);
}
Je reçois l'erreur:
No member named 'open' in 'std::__1::basic_istream<char>'
Y at-il quelque chose que je dois inclure ou ajouter de la bibliothèque standard?
Merci
Un 'std :: istream' générique n'a pas de méthode' open'. Vous devriez passer dans un 'std :: fstream' ou' std :: ifstream' à la place, qui est conçu pour fonctionner avec des fichiers. – Squidy
Je suis sûr que vous obtenez un peu plus d'erreurs de compilation avec ce code. Soit ça, ou ce n'est pas du vrai code. –
Toutes ces instructions 'using' et vous n'en utilisez aucune. – user4581301