发布网友 发布时间:2022-04-23 07:26
共3个回答
热心网友 时间:2022-06-17 16:11
inaccessible value其实并不一定是没有值,而是不能通过鼠标放到上面显示出值来,你说的这两种情况可能是有值但是不能这样显示。
关于SClen函数里面的result,应该是不能显示的情况,因为编译器不会定义一个result变量,而是直接把结果给了函数返回值。你可以试试把
Result := Round(CRadius* SeaClutterLevel/);
改成:
CRadius:= Round(CRadius* SeaClutterLevel/);
Result := CRadius;
看看CRadius是否能有正确的值。
在循环中不能显示值,原因应该是这是个函数不是变量,所以不能显示,你可以改成
a := SCLen;
for j:=a+1 to MaxCycCount-1 do
试试,看看a里面的值对不对。
热心网友 时间:2022-06-17 16:12
inaccessible value 表示值不存在
SCLen没有值说明返回值没有
然后看返回值,Result := Round(CRadius* SeaClutterLevel/);
你闲的确认SeaClutterLevel是否有值?如果他没值,运算出来也是没有值的
然后看Cradius是否有值,如果不存在
再看上面的判断,取公共变量 Radius和ARPAZoom[ARPAZoomNo])
确定Radius和ARPAZoomNo是否有值存在。
热心网友 时间:2022-06-17 16:12
建议代码贴完整,并指出在出现该错误时运行的分支及报错的语句。
现在连变量的声明都看不到无法判断问题。追问可是这个是个模拟器程序里面的,全贴出来,没法帖诶,而且程序运行的时候没有报错,您就帮我看下第一个这个自定义函数,function SCLen :integer;我又没有编写的错误,为什么运行到CRadius := Round(Radius * 5/ARPAZoom[ARPAZoomNo]);还能计算出CRadius的值,可是到了下一行Result := Round(CRadius* SeaClutterLevel/);却得不到result的值呢?
追答SeaClutterLevel在哪定义的都没看到啊,Result的值得不到是什么含义?直接写int a = SCLen会怎么样?