, 방금
TYPE(DGRID),TARGET,ALLOCATABLE :: DGRIDS(:)
유형
dgrid
의 것들의 배열을 선언 ... 담당자의 자만심을 추구 그것을 조금 확장합니다. 그것과 다른 라인은 분명히 코드의 다른 부분에 선언문이 있습니다.
type :: dgrid
...
<type> :: jek
...
end type
은 복구 된 조각입니다. 따라서 jek
(저는 Fortran 자체처럼 대소 문자를 구분하지 않습니다)는 dgrid
유형의 요소 이름으로 사용됩니다.
라인
JEK => DGRIDS(IMOD)%JEK
연관 소자 어레이 dgrids
의 imod
번째 요소 jek
으로 jek
라는 포인터. 코드에서 다른 곳 CodeBlocks가 imod
는 당신을 오해의 소지 함수 인수가 imod()
로 호출 할 필요가 없을 것으로도 기능이 있음을 알 수있는 경우이
<type_of_jek>, pointer :: jek
같은 선언이다. imod
은 정수 여야합니다.
jek
이라는 이름이 두 번 사용되면 다른 것을 식별합니다. 아마도 프로그래머의 손가락은 DGRIDS(IMOD)%
을 반복적으로 입력하는 것에 지쳐 갔고 프로그래머는 의 약식 별칭으로 jek
을 사용한다는 생각에 부딪쳤을 것입니다. 최첨단 컴파일러를 사용하면 associate
문을 사용하여 동일하게 구현할 수 있습니다.하지만 포트란 포인터에 대한 일반적인 대체는 아니며 별칭을 정의하기위한 대체 메커니즘입니다.
'IMOD'이 함수라는 것을 알지 못합니다. 예를 들어 C의 배열 구문에'dgrids [imod]'가있는 것 같습니다. 이는 또한 배열과 같이 의심스럽게 보이는'DGRIDS (:)'에 의해서도 지원됩니다. – paxdiablo