[Résolu][Fichier I/O] Problème de compilation.
Bonjour,
J'essaie de récupérer des données d'un fichier mais j'ai un petit souci de compilation. Quand je rajoute la ligne "aseFile >> material_count;", j'obtiens l'erreur de compilation suivante:
Code:
1 2 3
| Model.obj : error LNK2001: symbole externe non résolu _errno
libcpd.lib(xwctomb.obj) : error LNK2001: symbole externe non résolu _errno
Debug/Game.exe : fatal error LNK1120: 1 externes non résolus |
Voici le code de la fonction:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
| #include <fstream>
using namespace std;
#include "Material.h"
#include "Model.h"
bool Model::load(string fileName){
ifstream aseFile(fileName.c_str(), ios_base::in);
char buffer[50];
int material_count;
float f[3];
// Check if the file pointer is valid.
if(!aseFile.is_open()) {
return false;
}
// Get the number of materials and create the array
while(buffer!=string("*MATERIAL_COUNT")){
aseFile >> buffer;
}
// La ligne qui pose problème
aseFile>>material_count;
material = new Material[material_count];
aseFile.close();
return true;
} |
Re: [Fichier I/O] Problème de compilation.
Citation:
Envoyé par Roming22
Code:
1 2
|
ifstream aseFile(fileName.c_str(), ios_base::in); |
Si c'est un ifstream, tu n'as pas besoin du ios_base::in.
Citation:
Envoyé par Roming22
Code:
1 2 3 4 5
|
// Check if the file pointer is valid.
if(!aseFile.is_open()) {
return false;
} |
Un simple if (!aseFile) peut vérifier plus de choses.
Pour ce qui est de ton problème principal, j'ai vu ce genre d'erreurs avec devC++ sur d'autres programmes pourtant correct. Ca ressemble à un bug. Est-ce que par hasard, c'est le compilo que tu utilises ?
Si oui, soit tu peux en changer, soit tu inclus d'autres fichiers d'en-tête jusqu'à ce que tu trouves celui qui lui manque. Comme j'ai pris l'option 1, je ne peux hélàs pas te dire lesquels sont requis à tort.