0
我將CSimpleIniA包裝在Config類中以管理'config.ini'文件中的配置選項。CSimpleIniA - 包裝類的方法不讀取配置文件的值
在我提供的示例中,在Config
構造函數中讀取了sample_size
。 調用readSampleSize()
時,返回配置文件的值。
相反,readInitialPos()
應該(我所期望的)能夠讀取config.ini
並返回值inital_pos
。相反,它會返回默認值,第三個參數70000
。
我不明白爲什麼第二種方法不起作用。
config.hpp
class Config {
private:
unsigned long int sample_size;
public:
unsigned long int readInitialPos();
unsigned long int readSampleSize();
CSimpleIniA ini;
Config();
};
config.cpp
#include "../include/config.hpp"
Config::Config()
{
CSimpleIniA ini;
int error_nr = ini.LoadFile("config/config.ini");
if (error_nr) {
cout << "Error " << error_nr << " opening config.ini file." << endl;
exit(3);
}
sample_size = ini.GetLongValue("Rock", "sample_size", 50);
}
unsigned long int Config::readInitialPos()
{
return ini.GetLongValue("Rock", "initial_pos", 70000);
}
unsigned long int Config::readSampleSize()
{
return sample_size;
}
來電顯示,rock.cpp
void Rock::readConfig()
{
Config config;
initial_pos = config.readInitialPos();
sample_size = config.readSampleSize();
}
謝謝,沒有看到。關於你的最後一段,你提出什麼建議而不是.ini文件? – Luis