Walaupun wujudnya fungsi perpustakaan standard seperti swap( x,y), anda mungkin ingin menyediakan pelaksanaan yang disesuaikan untuk jenis tertentu. Ini boleh dicapai menggunakan pengkhususan templat atau lebihan fungsi. Untuk menjelaskan, pendekatan manakah yang lebih berkesan?
Lebih muatan membolehkan anda mentakrifkan berbilang fungsi dengan nama yang sama tetapi senarai parameter unik. Apabila menyelesaikan panggilan fungsi, pengkompil memilih fungsi dengan padanan terbaik untuk jenis argumen. Pendekatan ini menawarkan:
Walau bagaimanapun, beban berlebihan telah kelemahan yang berpotensi:
Pengkhususan templat membolehkan anda menyediakan pelaksanaan khusus untuk parameter templat tertentu. Ia menawarkan:
Walau bagaimanapun, pengkhususan juga mempunyai had:
Pendekatan terbaik bergantung pada keperluan khusus anda. Untuk senario mudah di mana fleksibiliti dan kesederhanaan diutamakan, beban berlebihan selalunya merupakan pilihan yang praktikal. Apabila prestasi dan penguatkuasaan jenis adalah penting, fungsi pengkhususan boleh memberikan penyelesaian yang optimum.
Atas ialah kandungan terperinci Templat Fungsi Berlebihan lwn. Pengkhususan: Bilakah Saya Harus Pilih Yang Mana?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!