0
是否可以在運行時編譯用戶定義的子例程並將其作爲輸入傳遞給已在Fortran中編譯的另一個子例程?是否可以編譯並在運行時將子例程作爲輸入傳遞給另一個子例程?
是否可以在運行時編譯用戶定義的子例程並將其作爲輸入傳遞給已在Fortran中編譯的另一個子例程?是否可以編譯並在運行時將子例程作爲輸入傳遞給另一個子例程?
簡短回答:否。
某些語言允許使用某些eval()
過程。 Fortran標準沒有任何這樣的能力,即使可以想象如果有一些使用LLVM或類似運行時系統(甚至是解釋器)的編譯器的擴展。
我認識的所有Fortran編譯器都是傳統的編譯器來編寫機器代碼,他們不允許這樣的事情發生。你可以做的是將代碼保存到文件中,在後臺調用Fortran編譯器來編譯共享庫(.dll
或.so
),然後使用特定於操作系統的例程加載該庫。