Perbezaan: 1. Sambungan perpustakaan statik biasanya ".a" atau ".lib"; 2. Pustaka statik akan disepadukan terus ke dalam program sasaran semasa penyusunan, dan fail boleh laku yang berjaya disusun boleh dijalankan secara bebas; .
Persekitaran pengendalian tutorial ini: sistem Windows 10, komputer Dell G3.
Perbezaan paling penting antara perpustakaan statik dan perpustakaan dinamik ialah: sama ada pustaka disusun ke dalam sasaran (program) .
Pustaka statik (fungsi)
umumnya mempunyai sambungan (.a
atau .lib
jenis perpustakaan fungsi ini biasanya mempunyai sambungan libxxx.a
atau xxx.lib
.
Pustaka jenis ini akan secara langsung disepadukan ke dalam program sasaran semasa penyusunan, jadi fail yang disusun menggunakan perpustakaan fungsi statik akan menjadi lebih besar. Kelebihan terbesar pustaka fungsi jenis ini ialah kompilasi berjaya. Fail boleh laku boleh dijalankan secara bebas tanpa memerlukan permintaan luar untuk membaca kandungan pustaka fungsi, bagaimanapun, jelas tiada kelebihan dari segi kemudahan naik taraf, ia perlu disusun semula.
Pustaka fungsi dinamik
Pelanjutan perpustakaan fungsi dinamik secara amnya (.so
atau .dll
jenis perpustakaan fungsi ini biasanya dinamakan libxxx.so
). atau xxx.dll
.
Tidak seperti perpustakaan fungsi statik yang ditangkap sepenuhnya dalam program, perpustakaan fungsi dinamik hanya mempunyai satu lokasi "menunjuk" dalam atur cara semasa penyusunan, yang bermaksud apabila fail boleh laku perlu menggunakan Mekanisme perpustakaan fungsi, program akan membaca perpustakaan fungsi untuk digunakan; iaitu, fail boleh laku tidak boleh dijalankan secara bersendirian. Ini memudahkan untuk menaik taraf dari perspektif peningkatan fungsi produk Anda hanya perlu menggantikan perpustakaan dinamik yang sepadan tanpa perlu menyusun semula keseluruhan fail boleh laku.
Ringkasnya, tidak dapat dilihat bahawa:
Dari perspektif penghasilan, perpustakaan algoritma atau perpustakaan fungsi yang diterbitkan haruslah dinamik yang mungkin, supaya adalah mudah untuk mengemas kini dan menaik taraf, dan tidak perlu menyusun semula keseluruhan fail boleh laku, cuma gantikan perpustakaan dinamik lama dengan versi baharu perpustakaan dinamik.
Dari perspektif penyepaduan perpustakaan fungsi, jika anda ingin menyepadukan semua sub-pustaka yang diterbitkan (lebih daripada satu) ke dalam perpustakaan dinamik untuk menyediakan antara muka luaran, maka anda perlu menyusun semua sub-pustaka ke dalam perpustakaan statik , supaya semua sub-perpustakaan Perpustakaan semuanya boleh disusun ke dalam perpustakaan dinamik sasaran, dan perpustakaan bersepadu terakhir menyediakan fungsi kepada dunia luar.
Untuk lebih banyak pengetahuan berkaitan, sila lawati ruangan Soalan Lazim!
Atas ialah kandungan terperinci Apakah perbezaan antara perpustakaan dinamik dan perpustakaan statik. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!