我定义了以下结构:
point_str={loop_point, x:0d, y:0d}
loop_time_str={loop_time_struct, points:ptr_new(/allocate_heap), loop_id:0d, time:0d}
loop_str={loop_struct,time_series:replicate(loop_time_str, num_images), loop_id:0d}
Points 是一个数组,因为点的大小不同,我知道它需要是一个指针。
稍后我创建一个新变量:
curr_loop_intime = {loop_time_struct}
然后我填充这些值。
FOR POINT=0,n_elements(IND)-1 DO BEGIN
points_arr[POINT].x = X(IND[POINT])
points_arr[POINT].y = Y(IND[POINT])
ENDFOR
然后我尝试通过执行以下操作将点数组分配给循环:
*(curr_loop_intime.points)=ptr_new(points_arr)
但是这条线给了我错误:
% Unable to dereference NULL pointer: <POINTER (<NullPointer>)>.
有没有人有什么建议?