Fortran 90 Specification neden (5.2.8) TARGET anahtar sözcüğünün bir POINTER'ı ilişkilendirmek için kullanılması gerektiğini belirtir (5.2.8)? Neden her tür geçerli bir TARGET değil? Örneğin Fortran POINTER neden bir TARGET gerektiriyor?
,
INTEGER, POINTER :: px
INTEGER, TARGET :: x
x = 5
px => x
geçerli sözdizimi ama
INTEGER, POINTER :: px
INTEGER :: x
x = 5
px => x
geçerli değil
olmasıdır. Neden bu olmalı?
Önceki yorumum doğru değildi. İşaretçi/hedef birliği bazı gerçekten zor durumlara yol açabilir. Fortran'da işaretçi/hedef dernek uygulamalarıyla deneyimsiz olursanız daha fazla okuma yapmanızı tavsiye ederim. Bkz., Örneğin, bu bağlantı https://software.intel.com/en-us/forums/intel-fortran-compiler-for-linux-and-mac-os-x/topic/709550 –