یا سلام
SmartArray(int length, bool initialize = false, byte initVal = 0)
متغیر اول length است که طول آرایه را در خود نگه خواهد داشت. دو پارامتر به منظور مقداردهی اولیه المانهای آرایه دریافت می کند؛ یکی متغیرinitialize که از نوع bool است و مشخص می کند که آرایه باید مقداردهی اولیه بشود یا خیر و دومی متغیر initVal است که تنها در صورتی موثر است که متغیر قبلی true باشد.
نیز با استفاده از عملگر new مانند زیر قادر خواهید بود:
int* data = new int[50];
برای پاک کردن آرایه از کد زیر استفاده کنید:
delete [] data;
برای فهم بیشتر مسئله به برنامه زیر رجوع کنید:
int* data = NULL; // Always initialize pointers to NULL or use new operator to assign some memory
data = new int[50];
// Make use of data
...
// Now we don't need it more, and want to free its memory
if(data != NULL) // or simply if(data)
delete [] data;
...
//Now if we try to delete it again, nothing will occur
if(data)//will not execute, since data is NULL
delete [] data;