Changeset 164 for trunk/archive/pslib/src/Utils/array.c
- Timestamp:
- Mar 9, 2004, 2:34:28 PM (22 years ago)
- File:
-
- 1 edited
-
trunk/archive/pslib/src/Utils/array.c (modified) (6 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/archive/pslib/src/Utils/array.c
r141 r164 10 10 P_PS_CREATE_ARRAY_TYPE(static, my_, psVoidPtr); 11 11 12 psVoidPtrArray *psVoidPtrArray New(int n, int s)12 psVoidPtrArray *psVoidPtrArrayAlloc(int n, int s) 13 13 { 14 return my_psVoidPtrArray New(n, s);14 return my_psVoidPtrArrayAlloc(n, s); 15 15 } 16 16 … … 20 20 } 21 21 22 void psVoidPtrArray Del(psVoidPtrArray *arr,23 void (*elemDel)(void *)) // destructor for data on array22 void psVoidPtrArrayFree(psVoidPtrArray *arr, 23 void (*elemFree)(void *)) // destructor for data on array 24 24 { 25 25 if (arr == NULL) { … … 28 28 29 29 for (int i = 0; i < arr->n; i++) { 30 if (elem Del== NULL) {30 if (elemFree == NULL) { 31 31 psMemDecrRefCounter(arr->arr[i]); 32 32 } else { 33 elem Del(psMemDecrRefCounter(arr->arr[i]));33 elemFree(psMemDecrRefCounter(arr->arr[i])); 34 34 } 35 35 } 36 my_psVoidPtrArray Del(arr);36 my_psVoidPtrArrayFree(arr); 37 37 } 38 38 … … 44 44 } psXY; 45 45 46 psXY *psXY New(void)46 psXY *psXYAlloc(void) 47 47 { 48 48 return psAlloc(sizeof(psXY)); 49 49 } 50 50 51 void psXY Del(psXY *xy)51 void psXYFree(psXY *xy) 52 52 { 53 53 psFree(xy); … … 62 62 int main(void) 63 63 { 64 psXYArray *t = psXYArray New(10, 15);65 psXYPtrArray *pt = psXYPtrArray New(10, 10);64 psXYArray *t = psXYArrayAlloc(10, 15); 65 psXYPtrArray *pt = psXYPtrArrayAlloc(10, 10); 66 66 67 67 for (int i = 0; i < t->n; i++) { … … 78 78 printf("\n"); 79 79 80 psXYArray Del(t);80 psXYArrayFree(t); 81 81 82 82 psXY *xy = psMemDecrRefCounter(pt->arr[0]); 83 83 pt->arr[0] = NULL; 84 psXY Del(xy);84 psXYFree(xy); 85 85 86 psXYPtrArray Del(pt);86 psXYPtrArrayFree(pt); 87 87 88 88 psMemCheckLeaks(0, NULL, stderr);
Note:
See TracChangeset
for help on using the changeset viewer.
