Dyn. Mehrdim. Array -> Speicher freigeben
-
hi!
ich habe folgenden code:
// --- Allokieren --- m_pScreenBuffer = new int*[nHeight]; for (int i = 0; i < nHeight; i++) m_pScreenBuffer[i] = new int[nWidth]; // --- Freigeben --- for (int i = 0; i < nHeight; i++) delete[] m_pScreenBuffer[i];
Irgend wie hab ich da so ein Gefühl das da nicht ALLES wieder freigegeben wird sondern ein Rest im mem bleibt...
Was meint ihr?danke
3rdstage
-
for (int j = 0; j < FirstDim ; j++) delete [] p2DimArr[j] ; delete [] p2DimArr;
steht alles in unseren FAQs
edit: übrigens steht bei den FAQs unter punkt 4, man solle doch valarrays verwenden. valarrays von valarrays? geht doch nicht! außerdem wird nicht auf zusätzliche kosten hingewiesen (preallokation von speicher)
-
übrigens steht bei den FAQs unter punkt 4, man solle doch valarrays verwenden. valarrays von valarrays? geht doch nicht!
Also ich kenne mich mit valarrays überhaupt nicht aus, aber kann man da nicht über slices 2-Dimensionale-Arrays mit nachbilden?
Naja, wie auch immer. valarrays sind eh kaputt
-
ja, man kann es tatsächlich nachbilden. aber bei den faqs kommt's imho so rüber als wären vector und valarray gleichwertig.