Aquí hay una tarea común: leer los parámetros de configuración de un archivo de configuración, guardar los ajustes (por ejemplo, un hash) en un objeto, acceder a este objeto desde varios objetos que necesitan acceder a la configuración parámetros.Cómo crear un objeto de parámetros globales
Encontré this implementation para la implementación de la clase ConfigFile y funciona. Mi pregunta es: ¿cuál es la mejor manera de hacer que una instancia de esta clase esté disponible en mis otras clases y sea segura, evite el fiasco de orden de inicialización estática, etc.
Mi enfoque actual es construirlo en main() usando
// Read face detection related parameter values from the configuration file.
string configFileName = "detection_parameters.txt";
try {
parameters = ConfigFile(configFileName);
}
catch(ConfigFile::file_not_found) {
cerr << "configuration file not found: " << configFileName << endl;
exit(-1);
}
y luego hacer parámetros una variable global. Pero también leí que deberían usarse singletons en lugar de variables globales. ¿Cómo se puede crear una instancia del singleton con el nombre del archivo?
¿Esta debe ser una tarea tan común que creo que debe haber una buena forma generalmente aceptada de hacerlo? Agradecería que alguien me lo señale.
Gracias, C
La biblioteca PO de impulso maneja las opciones del programa de línea de comando, mi pregunta era acerca de las opciones de configuración para leer desde un archivo. – recipriversexclusion
Puede leer desde un archivo de configuración con esa biblioteca. –