我正在使用GNU gfortran(gfortran -v4.8.2),我在使用数组作为对象属性时遇到了麻烦。这就是我的意思:
type test_type
real*8 test_array(10,20)
end type test_type
type (test_type) example_test_type
稍后当我尝试分配test_array的元素时:
example_test_type%test_array[0,1] = 99
编译器抱怨(致命错误):
致命错误:在(1)处禁用Coarray,使用-fcoarray =启用
从我能找到的一点点来看,coarray旨在促进对并行编程的支持,我绝对不会在这里做。
有什么想法吗?
答案 0 :(得分:6)
您在此声明中使用了错误类型的括号/括号/圆括号(第一圈):
example_test_type%test_array[0,1] = 99
应该是
example_test_type%test_array(0,1) = 99
[]
用于指定共同索引的共同索引,因此,对您来说,这是一个令人困惑的错误消息。
接下来,您将在引用数组的元素(0,1)
时出现问题,因为默认情况下,Fortran索引从1开始。