起初,我在应用程序启动时将所有变量加载到内存中。随着时间的推移,变量的数量变得如此庞大,以至于我不想再这样做了。相反,我只在需要它们时才检索它们(使用映射文件,但那是另一回事)。
首先,我将变量写入文件。(这重复了很多次......)
vector<udtAudioInfo>::iterator it = nAudioInfos.Content().begin();
for (;it != nAudioInfos.Content().end(); ++it)
//I think here I should store the position where the data will begin in the file
//I still need to add code for that...
//now write the variables
fwrite(&it->UnitID,sizeof(int),1,outfile);
fwrite(&it->FloatVal,sizeof(double),1,outfile);
//I think here I should store the length of the data written
//I still need to add code for that...
}
但是现在我需要动态加载变量,我需要跟踪它们的实际存储位置。
我的问题是:如何找出当前的写入位置?我认为并希望我可以使用它来跟踪数据实际驻留在文件中的位置。