Hola, estoy intentando implementar un sencillo programa que lee de un fichero de texto y va guardando lo datos en un vector. A la hora de compilar me salen los siguientes errores:
 
error LNK2019: símbolo externo "public: void __thiscall Objeto::cargar(class std::basic_istream<char,struct std::char_traits<char> > &)const " (?cargar@Objeto@@QBEXAAV?$basic_istream@DU?$char_t  raits@D@std@@@std@@@Z) sin resolver al que se hace referencia en la función "void __cdecl cargarDatos(char const *)" (?cargarDatos@@YAXPBD@Z)    visualizador.obj    visualizador
 
fatal error LNK1120: 1 externos sin resolver    Debug\visualizador.exe    visualizador
 
A continuación os pongo parte del código donde podría estar el fallo:
 
Esta es la clase principal:
 
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
#include <gl/glut.h>
#include <GL/gl.h>
#include <iostream>
#include <fstream>
#include "Objeto.h"
 
Objeto objeto;
char  fichero[128];
 
//Carga los datos del fichero
void cargarDatos(const char *fnombre)
{
    // Intentamos cargar el fichero si es posible
    std::ifstream archivo(fnombre);
    if (archivo.is_open())
    {
        objeto.cargar( archivo );//AQUÍ SE PRODUCE EL FALLO
        archivo.close();
    }
}
 
 
/*  Main Loop
*  Open window with initial window size, title bar,
*  RGBA display mode, and handle input events.
*/
int main(int argc, char** argv)
{
    std::cout << " Introduzca el nombre de fichero de la figura: " ;
    std::cin >> fichero;
    cargarDatos(fichero);
 
    return 0;
}
 
Esta es la clase objeto a la cual se llama desde principal:
 
void cargar( std::istream& input ){
tray.clear();
fig.clear();
 
    unsigned int totalTray;
    input >> totalTray;
 
    for(unsigned int i = 0; i < totalTray; ++i)
    {
        float x, y;
        input >> x >> y;
        tray.push_back( Vec3(x,y,0.0) );
    }
 
    unsigned int totalFig;
    input >> totalFig;
 
    for(unsigned int j = 0; j < totalFig; ++j)
    {
        float x, z;
        input >> x >> z;
        fig.push_back( Vec3(x,0.0,z) );
    }
 
    //ordenar el vector fig en sentido antihorario
 
    for (unsigned int k=0; k < tray.size(); ++k)//vamos recorriendo las trayectorias
    {
        VectorVec3 aux;
        Vec3 pTray = tray[k];
        for (unsigned int n=0; n < fig.size(); ++n)
        {
            Vec3 pFig = fig[n];
            pFig.y = pTray.y;
            pFig.x = pTray.x + pFig.x;
            aux.push_back(pFig);
        }
        pm.push_back(aux);
    }
}
 
Las librerías creo que están bien importadas puesto que en otro proyecto que hago casi lo mismo y me funciona tengo las mismas librerias. La parte que pone de OpenGL todavía no la estoy utilizando.
 
Espero que alguien pueda saber porque me da este error, muchas gracias!! 
  
 

