ste*_*987 1 oop fortran fortran90
我正在使用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
Run Code Online (Sandbox Code Playgroud)
稍后当我尝试分配test_array的元素时:
example_test_type%test_array[0,1] = 99
Run Code Online (Sandbox Code Playgroud)
编译器抱怨(致命错误):
致命错误:在(1)处禁用Coarray,使用-fcoarray =启用
从我能找到的一点点来看,coarray旨在促进对并行编程的支持,我绝对不会在这里尝试.
有什么想法吗?
您在此声明中使用了错误类型的括号/括号/圆括号(圆圈1):
example_test_type%test_array[0,1] = 99
Run Code Online (Sandbox Code Playgroud)
应该是
example_test_type%test_array(0,1) = 99
Run Code Online (Sandbox Code Playgroud)
[] 用于指定共同索引的共同索引,因此,令您困惑的错误消息.
接下来,您将在引用(0,1)数组元素时遇到问题,因为默认情况下,Fortran索引从1开始.