› Foros › PC › Software libre
xxxxxx1: yyyy1
xxxxxx2: yyyy2
...etc.
variable1: 1.002
variable2: 3.141592
...etc.
# esto es un comentario de una linea
variable1: 1.002
# aqui viene la segunda variable
variable2: 3.141592
#fin del fichero
file>>trash;
file>>program_version;
file>>trash;
file>>build_time;
file>>build_date;
file>>trash;
file>>msg_final_mark;
string variable[1000]; i=0;
while(!eof){
comprobar_comentarios();
file>>variable[i];
i++;
Ferdy escribió:Lo más fácil es que cada variable sea un objeto de una clase (según su tipo) y tengas un método virtual que sea capaz de construir un objeto de esa clase a partir de un std::ifstream. Con un poco de cuidado y un std::set o un std::map (según lo que necesites) es bastante fácil de hacer.
Saludos.
class Config{
public:
Config(string name);
//Variables a usar
int a;
float b;
string c;
};
Config(string name){
string aux;
ifstream file("config.txt");
while(!feof){
aux = getline(file);
if(aux.find(name)>string::npos){
//Busco la variable dentro de aux y la asigno al objeto correspondiente
}
}
}