Yes,but with a very important side-effect - increasing the size of an array, or resizing using DIM makes your current pointer invalid, which complicates your code.
Here's an example of resizing an array via its pointer:
Ptr = get arrayptr( MyArray() )
unlink array MyArray()
link array MyArray(), AppendToArray( Ptr )
function AppendToArray( Ptr )
local dim Temp() ` Doesn't need to be of the same array type as the pointer
link array Temp(), Ptr
array insert at bottom Temp()
Ptr = get arrayptr( Temp() )
unlink array Temp()
endfunction Ptr