Rumah Pembangunan Apakah templat? - definisi dari techopedia

Apakah templat? - definisi dari techopedia

Isi kandungan:

Anonim

Definisi - Apa maksudnya Template?

Templat adalah ciri pengaturcaraan C ++ yang membenarkan fungsi dan operasi kelas dengan jenis generik, yang membolehkan fungsi dengan jenis data yang berbeza tanpa menulis semula keseluruhan blok kod untuk setiap jenis.


Template adalah utiliti yang berharga dalam C ++, terutamanya apabila digunakan dengan overloading operator dan warisan berganda. Templat mengurangkan usaha yang berkaitan dengan pengekodan jenis data yang berbeza kepada satu set kod dan mengurangkan usaha debug.

Techopedia menerangkan Templat

C ++ menyediakan dua jenis templat berikut yang digunakan untuk melaksanakan pembinaan umum, seperti senarai, baris, vektor dan susunan:

  • Templat kelas: Menyerupai takrifan kelas biasa tetapi diawali dengan yang berikut: templat , diikuti dengan pengisytiharan badan kelas, termasuk data dan fungsi ahli. Deklarasi dan definisi fungsi templat kelas kelas berada dalam fail header yang sama. Templat kelas C ++ paling sesuai untuk kelas kontena.
  • Templat fungsi: Dilaksanakan melalui parameter templat, yang merupakan jenis parameter khas yang digunakan untuk lulus jenis sebagai hujah fungsi. Oleh itu, fungsi boleh disesuaikan dengan lebih daripada satu jenis atau kelas tanpa mengulangi keseluruhan kod. Format untuk mengisytiharkan templat fungsi dengan parameter jenis adalah sama ada templat fungsi_deklarasian atau templat fungsi_deklarasian. Tiada perbezaan antara kata kunci kelas dan nama fail.
Templat umumnya memerlukan pemeriksaan jenis pada masa kompilasi.


Kod yang dihasilkan oleh template mungkin ditampal dengan memberikan definisi khusus untuk jenis tertentu, yang dikenali sebagai pengkhususan templat. Versi khas fungsi untuk set hujah templat yang diberikan dikenali sebagai pengkhususan eksplisit. Templat kelas khusus oleh subset parameternya dikenali sebagai pengkhususan template separa. Pengkhususan penuh berlaku f setiap parameter khusus. Takrif ini ditulis dalam konteks C ++

Apakah templat? - definisi dari techopedia