I am trying to save some variables to a .txt file...
I get strange linker errors when I try to write or read these files.
My headers...
Code:
#include <iostream>
#include <fstream>
#include <string>
#include <cstring>
using namespace std;
Inializing the structures
Code:
struct Variables
{
int distOnOff;
int distDrive;
int distClip;
int distOverdrive;
int distAfterwah;
int distSatOnOff;
int distSaturation;
int distLpFilter;
int distLpFilterQ;
int distBoostOnOff;
int distBoostHz;
int distBoostDb;
};
#pragma pack(push, 1)
struct FileData
{
int var_int;
char var_string[13];
Variables var_struct;
};
#pragma pack(pop)
initializing the functions performing the serializtion
Code:
bool ReadSerialized(const char * filename, const FileData & data);
bool WriteSerialized(const char * filename, FileData & data);
My function calling the serialization
Code:
void CFXBOXDlg::ClickBadd()
{
// TODO: Add your message handler code here
UpdateData(TRUE);
m_presetCtr.AddString(m_presetStr);
/******/
FileData data_out;
data_out.var_struct.distOnOff = m_distOnOff;
data_out.var_struct.distDrive = m_distDrive;
data_out.var_struct.distClip = m_distClip;
data_out.var_struct.distOverdrive = m_distOverdrive;
data_out.var_struct.distAfterwah = m_distAfterwah;
data_out.var_struct.distSatOnOff = m_distSatOnOff;
data_out.var_struct.distSaturation = m_distSaturation;
data_out.var_struct.distLpFilter = m_distLpFilter;
data_out.var_struct.distLpFilterQ = m_distLpFilterQ;
data_out.var_struct.distBoostOnOff = m_distBoostOnOff;
data_out.var_struct.distBoostHz = m_distBoostHz;
data_out.var_struct.distBoostDb = m_distBoostDb;
WriteSerialized("Presets.txt", data_out);
FileData data_in;
ReadSerialized("Presets.txt", data_in);
m_distOnOff = (int)data_in.var_struct.distOnOff;
m_distDrive = (int)data_in.var_struct.distDrive;
m_distClip = (int)data_in.var_struct.distClip;
m_distOverdrive = (int)data_in.var_struct.distOverdrive;
m_distAfterwah = (int)data_in.var_struct.distAfterwah;
m_distSatOnOff = (int)data_in.var_struct.distSatOnOff;
m_distSaturation = (int)data_in.var_struct.distSaturation;
m_distLpFilter = (int)data_in.var_struct.distLpFilter;
m_distLpFilterQ = (int)data_in.var_struct.distLpFilterQ;
m_distBoostOnOff = (int)data_in.var_struct.distBoostOnOff;
m_distBoostHz = (int)data_in.var_struct.distBoostHz;
m_distBoostDb = (int)data_out.var_struct.distBoostDb;
/******/
m_presetStr = "";
UpdateData(FALSE);
}
My errors (one for each) ->WriteSerialized("Presets.txt", data_out);
->ReadSerialized("Presets.txt", data_in);
Code:
FXBOX error LNK2019: unresolved external symbol "protected: bool __thiscall CFXBOXDlg::ReadSerialized(char const *,struct FileData const &)" (?ReadSerialized@CFXBOXDlg@@IAE_NPBDABUFileData@@@Z) referenced in function "protected: void __thiscall CFXBOXDlg::ClickBadd(void)" (?ClickBadd@CFXBOXDlg@@IAEXXZ)
FXBOX error LNK2019: unresolved external symbol "protected: bool __thiscall CFXBOXDlg::WriteSerialized(char const *,struct FileData &)" (?WriteSerialized@CFXBOXDlg@@IAE_NPBDAAUFileData@@@Z) referenced in function "protected: void __thiscall CFXBOXDlg::ClickBadd(void)" (?ClickBadd@CFXBOXDlg@@IAEXXZ)