If I delete the header file and put all the implementation inside the class definition in BigNumber.cpp, everything works as intended. But with the project structured as shown, when I try and run it, for each function I get an error looking like
BigNumberMain.obj : error LNK2005: "public: void __thiscall BigNumber::formatCorrection(void)" (?formatCorrection@BigNumber@@QAEXXZ) already defined in BigNumber.obj
What stupid thing have I done?
I'm using MSVC++2010 express btw.
You are including the BigNumber.cpp file in your main file. Ordinarily you shouldn't include the implementation files, just the headers, i.e. BigNumber.h