Ver Mensaje Individual
  #1 (permalink)  
Antiguo 05/05/2019, 14:04
valentz
 
Fecha de Ingreso: abril-2012
Mensajes: 7
Antigüedad: 12 años, 6 meses
Puntos: 0
declaracion variable dentro de clase

Hola,

tengo definida una clase de la siguiente forma:
Código:
#include <fstream>
#include <iostream>
#include <vector>
#include <string>
#include "../rapidxml-1.13/rapidxml_utils.hpp"

using namespace rapidxml;

#pragma once

class CInput {

private:

	//xml_document<> doc;	
	//vector<char> buffer; 

public:
	
	// Definition of the function to get the data from InputFile
	void load(char *fullpath);
};
y la función load de la siguiente forma:
Código:
void CInput::load(char *fullpath){

	ifstream file(fullpath);

	/* "Read file into vector<char>" */ 
    vector<char> xml_copy;
	xml_copy.assign((istreambuf_iterator<char>(file)), istreambuf_iterator<char>());
	xml_copy.push_back('\0'); 
	
	xml_document<> doc;
	doc.parse<0>(&xml_copy[0]);

}
La función load debug sin error siempre y cuando declare las variables xml_copy y doc dentro de la función load en lugar de en la clase. ¿Alguien me puede explicar porque?
El problema es que la variable doc la necesito en otras funciones de la clase y como no estan declaradas no funciona bien el programa. ¿Alguna sugerencia?