我试图用它forall
来分配动态数组,但 gfortran 不喜欢这样。我还发现write
语句在块中是被禁止的forall
,我怀疑read
语句也是。
块中不允许有哪些其他功能/操作forall
?
do
除了有时在顺序无关紧要时替换循环之外,这个构造究竟是什么?我认为它会使编码更加清晰和优雅,尤其是在操作顺序不重要时显示出来,但是对于可以在forall
.
这些限制的原因是什么,即它们保护/防止用户搞砸什么?使用它是个好主意forall
吗?如果是这样,出于什么目的?
现在在我正在处理的代码中只有一个forall
块,如果我在do
循环中将它全部翻译出来,它将产生四个嵌套循环。哪种方式更好?