现代Fortran中是否有可能使用向量来索引多维数组?也就是说,给予,
integer, dimension(3) :: index = [4,6,9]
double precision, dimension(10,10,10) :: data
Run Code Online (Sandbox Code Playgroud)
是否有data(4,6,9)比写作更好(更一般)的访问方式data(index(1), index(2), index(3))?不必硬编码data数组的等级就好了.
(天真我想写,data(index)但当然这实际上意味着不同的东西 - 子集"聚集" - 要求data自己成为排名第一的阵列.)
对于它的价值,这基本上与JavaScript中的索引数组的多维索引相同,但在Fortran中.不幸的是,那里的聪明答案不适用于预定义的数组排名.