首先,我是 C++ 和列表的新手,所以它可能很明显,我只是没看到,抱歉 :(
我正在尝试创建文件列表,当我尝试将第一个文件推送到列表时遇到错误。调试断言错误消息是“列表插入迭代器超出范围”。
在头文件中,我有:
class ConfigDefFile
{
public:
ConfigDefFile( const char * dir_path, const char * file_name );
private:
ConfigDef * config;
static char filePath[ MAX_PATH + 1 ];
};
typedef list<ConfigDefFile *> ConfigDefFileList;
ConfigDefFileList def_files;
我将文件添加到列表的代码是:
char * root_path = NULL;
ConfigDefFile * def_file;
root_path = GetDefDir(); //Gets the root directory for the file.
def_file = new ConfigDefFile( root_path, file );
def_files.push_back( def_file ); //error occurs here
关于我在做什么会导致这种情况的任何想法?