Hey there!
Good news, my work for the last while shall hopefully soon be hitting the stage where i reveal the game and start showing updates publicly.
Not so good news, as this is my first C++ project (that wasn't just my own little test), I'm quite new to the details of the whole debug/release differences.
In fact, it wasn't until a few days ago that i tried to compile into a release mode.
I've removed all bugs (fixed up the required .lib files, etc.), but now am coming across a really weird issue.
When a new ZipFile is created (sorry, at a different computer, but the line is something like "m_pZipFile = new ZipFile" (in the existing GameCode4 source)) in debug mode, there are no issues. However in the release mode, the next line ("if (!m_pZipFile)") return true, in other words, the ZipFile instance isn't being created. Creating a breakpoint and putting my mouse over the variable (in VS2012) shows that the fields within the ZipFile class are all "???".
Could anyone work out why this could be?
I feel it is important to note the following:
- I have not changed the ZipFile class, nor anything it uses.
- The ResourceCache, ZipFile, etc. classes have all been moved to this project, it isn't using the non-resource related code
- Stepping in to the line of new ZipFile first brings me to a memory allocation function, and then to a function in the xtree class (pretty sure that's what it's called), but not to the constructor. In debug mode, it goes first to memory allocation and then to the constructor, not to the xtree class.
- No errors appear, the variable just can't be used as it is equal to NULL (0)
Once again, thanks for any help. If you need more information I will provide it.
Good news, my work for the last while shall hopefully soon be hitting the stage where i reveal the game and start showing updates publicly.
Not so good news, as this is my first C++ project (that wasn't just my own little test), I'm quite new to the details of the whole debug/release differences.
In fact, it wasn't until a few days ago that i tried to compile into a release mode.
I've removed all bugs (fixed up the required .lib files, etc.), but now am coming across a really weird issue.
When a new ZipFile is created (sorry, at a different computer, but the line is something like "m_pZipFile = new ZipFile" (in the existing GameCode4 source)) in debug mode, there are no issues. However in the release mode, the next line ("if (!m_pZipFile)") return true, in other words, the ZipFile instance isn't being created. Creating a breakpoint and putting my mouse over the variable (in VS2012) shows that the fields within the ZipFile class are all "???".
Could anyone work out why this could be?
I feel it is important to note the following:
- I have not changed the ZipFile class, nor anything it uses.
- The ResourceCache, ZipFile, etc. classes have all been moved to this project, it isn't using the non-resource related code
- Stepping in to the line of new ZipFile first brings me to a memory allocation function, and then to a function in the xtree class (pretty sure that's what it's called), but not to the constructor. In debug mode, it goes first to memory allocation and then to the constructor, not to the xtree class.
- No errors appear, the variable just can't be used as it is equal to NULL (0)
Once again, thanks for any help. If you need more information I will provide it.
The post was edited 1 time, last by Randomman159 ().