1
DrRacket的文檔說所有的符號都是被攔截的,但在可執行文件中怎麼會這樣呢?這些符號是否在可執行文件的符號表或其他地方註冊過?當DrRacket編譯符號時,它們是否在可執行文件的符號表中執行?
DrRacket的文檔說所有的符號都是被攔截的,但在可執行文件中怎麼會這樣呢?這些符號是否在可執行文件的符號表或其他地方註冊過?當DrRacket編譯符號時,它們是否在可執行文件的符號表中執行?
不,他們被關在應用程序的內部堆中。所以你可以將它們視爲可執行文件的「一部分」,但它們不是象鏈接器那樣尋找的符號表的一部分,它們不以那種方式導出。它們位於應用程序的內部符號表中,該表是堆的一部分。
要清楚的是,已知爲符號的數據結構不同於已編譯可執行文件中的符號(例如函數名稱)。 – 2014-09-03 22:14:46