C++ CSimpleIniA—包装类的方法不';t读取配置文件值

C++ CSimpleIniA—包装类的方法不';t读取配置文件值,c++,C++,我包装了一个Config类来管理“Config.ini”文件中的配置选项 在我提供的示例中,sample\u size在Config构造函数中读取。 调用readSampleSize()时,将返回配置文件的值 相比之下,readInitialPos()应该(正如我所期望的)能够读取config.ini并返回inital\u pos的值。相反,它返回默认值,即第三个参数70000 我不明白为什么第二种方法不起作用 config.hpp class Config { private: un

我包装了一个Config类来管理“Config.ini”文件中的配置选项

在我提供的示例中,
sample\u size
Config
构造函数中读取。 调用
readSampleSize()
时,将返回配置文件的值

相比之下,
readInitialPos()
应该(正如我所期望的)能够读取
config.ini
并返回
inital\u 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;
}
Config::Config()
{

CSimpleIniA ini;//谢谢,我没看到。关于你的最后一段,你建议用什么来代替.ini文件?
void Rock::readConfig ()
{
    Config config;

    initial_pos = config.readInitialPos ();

    sample_size = config.readSampleSize ();
}
Config::Config () 
{
    CSimpleIniA ini;                                     // <== here!
    int error_nr = ini.LoadFile("config/config.ini");
    // etc...
}