I was trying to implement this dynamic array thing and I ran into some problems When I try to compile it, the compiler tells me that bunch of my functions are not declared in this scope
here are the files
dynamicArray.h
#ifndef DYNAMICARRAY_H
#define DYNAMICARRAY_H
#include <ctime>
#include<iostream>
class dynamicArray{
public:
    dynamicArray();
    int * array_constructor(int *  &intPtr, int &size );
    int * array_resize(int * &intPtr, int& currSize, int& newSize);
    void array_destructor(int * &intPtr);
    void array_set(int* &intPtr, int &size);
};
#endif  // DYNAMICARRAY_H
dynamicArray.cpp
#include "dynamicArray.h"
#include <iostream>
#include <ctime>
#include <cstdlib>
using namespace std;
int * array_constructor(int *  &intPtr, int &size ){
    if(intPtr != NULL){
        delete [] intPtr;
    }
    intPtr = new int[size];
    for (int i = 0; i < size; i++){
        intPtr[i] = i*i;
    }
    return intPtr;
}
int * array_resize(int * &intPtr, int& currSize, int& newSize){
    if(newSize == 0){
        delete [] intPtr;
        return NULL;
    }else if((newSize == currSize) || (newSize < 0)){
        return intPtr;
    }
    int * array = new int[newSize];
    for (int i = 0; i < newSize; i++){
        array[i] = i*i;
    }
    return array;
}
void array_destructor(int * &intPtr){
    delete [] intPtr;
    intPtr = NULL;
}
void array_set(int*& intPtr, int& size){
    srand(time(0));
    for (int i = 0; i < size; i++){
        intPtr[i] = rand();
    }
}
main.cpp
#include "dynamicArray.h"
#include <array>
#include <iostream>
using namespace std;
void print(int array[], int size){
    if(array == NULL){
        cout << "array is empty" << endl;
        return;
    }
    for(int i = 0; i < size; i++){
        cout << "array[" << i << "] = " << array[i] << endl;
    }
    cout << endl;
    return;
}
int main() {
    int *myArray = NULL;
    int size = 8;
    int newSize1 = 10;
    int newSize2 = 5;
    int newSize3 = -1;
    int finalSize = 1;
    myArray = array_constructor(myArray, size);
    print(myArray, size);
    myArray = array_resize(myArray, size, newSize1);
    print(myArray, newSize1);
    myArray = array_resize(myArray, newSize1, newSize2);
    print(myArray, newSize2);
    myArray = array_resize(myArray, newSize2, newSize3);
    print(myArray, newSize2);
    array_set(myArray, newSize2);
    print(myArray, newSize2);
    array_destructor(myArray);
    print(myArray, finalSize);
    return 0;
}
I tried putting int * dynamicArray::array_constructor(int * &intPtr, int &size ) instead, but no luck Did I do something wrong with the header file or in dynamicArray.cpp? This worked before, but I forgot how to do it.
 
    