I want dynamically to create an object such as
cMyClass* pMyClass;
pMyClass = new cMyClass();
but after this pMyClass = 0x00000000;
WHY? Where is the trable?
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
I want dynamically to create an object such as
cMyClass* pMyClass;
pMyClass = new cMyClass();
but after this pMyClass = 0x00000000;
WHY? Where is the trable?
I'm not a C++ guy, but perhaps you don't have a heap defined (or too small)?
Heap defined 0x4000
Stack defined 0x4000
Is it not enought?
I try to increase heap and stack but result is the same.
DSP - TMS320C6727B.
Header:
class cMyClass
{
cMyClass();
~cMyClass();
float Temp1[10000];
float Temp2[10000];
}
Is this a BIOS project? If so, how are you setting the heap size. There are multiple ways to do it and I think your value can get overridden if you do it through the project file rather than through the BIOS config file.
This is not DSPBIOS project.
The heap is set by the .cmd (linker command file).
Problem is actually...
That class has two giant arrays in it. The total size of that class is 80000 (0x13880) bytes. You need a bigger heap, or a smaller class.
Thanks and regards,
-George