(çok) farklı sıra ve türlerde veri dizileri içeren bir Fortran türetilmiş T'ye sahibim. Bu diziler, bir karmaşık veri yapısı içinde gizli ve bu bir alıcı işlevi istiyorum aşağıdaki işlemleri yapar:Fortran 2003'te türüne bağlı işlev aşırı yükleme
, "a", belirli bir tipteki bir dizi gösterici ve data_id olan bir tam sayı olduğua => T%get(data_id)
Veri yapısında veriyi bulmak için kullanılır. Bunu, genel bir ad altında birçok "get_thistype()" işlevini aşırı yükleyerek yapıyorum.
TYPE T
PROCEDURE :: get_real
PROCEDURE :: get_integer
GENERIC :: get => get_real,get_integer
END TYPE
Bu get_thistype() rutinleri altyordamlar ise çalışır, ancak işlevleri olarak yazılır değilse. Bu benim kodumun daha az okunabilir bulduğum anlamına gelir:
. Aynı argüman listesi olan ancak farklı dönüş türlerine sahip işlevleri aşırı yükleme yolu var mı? ya da bunun için alt rutinleri kullanmalı mıyım?
Derleyicinin yalnızca geri dönüş türlerine göre doğru işlevi bulmasının zor olacağını düşünüyorum, bu yüzden muhtemelen imkansız. Altprogramları kullanırdım. – bdforbes