For whatever reason, when I create a pointer that allocates more than 1 MFC CString, my program crashes when I free the memory used, which essentially forces me to have to allow memory leaks.
For example, this code will not crash my program:
CString *x = new CString;
delete x;
But this will crash my program:
CString *x = new CString[2];
delete x;
I have no idea why this is and it only happens with MFC CStrings. If I use doubles, or ints, then it works fine, no memory leaks, but for some reason with CString''s it ends up crashing.