Bagaimanakah Saya Boleh Mewakilkan Pembina dalam C untuk Mengelakkan Pertindihan Kod?

DDD
Lepaskan: 2024-11-22 06:40:14
asal
132 orang telah melayarinya

How Can I Delegate Constructors in C   to Avoid Code Duplication?

Mewakilkan Pembina dalam C

Apabila berurusan dengan berbilang pembina dalam kelas C, mungkin terdapat keadaan di mana kod yang sama diulang merentas pembina. Untuk menyelaraskan proses ini, C menyediakan keupayaan untuk mewakilkan panggilan pembina.

Dalam senario anda, anda cuba memanggil pembina Bitmap(HBITMAP) daripada pembina Bitmap(WORD). Semasa pendekatan pertama anda mencipta peta bit sementara dan memanggil pembina lain dengannya, sintaks yang betul untuk delegasi pembina menggunakan senarai permulaan pembina.

Kod berikut menunjukkan pendekatan yang betul:

Bitmap::Bitmap(HBITMAP Bmp)
{
    // Construct some bitmap stuff..
}

Bitmap::Bitmap(WORD ResourceID) : Bitmap((HBITMAP)LoadImage(GetModuleHandle(NULL), MAKEINTRESOURCE(ResourceID), IMAGE_BITMAP, 0, 0, LR_SHARED))
{
}
Salin selepas log masuk

Dengan meletakkan panggilan delegasi pembina dalam senarai permulaan, anda memastikan bahawa pembina Bitmap(HBITMAP) dipanggil sebelum yang lain kenyataan dalam pembina Bitmap(WORD). Ini membolehkan anda menggunakan semula kod biasa semasa memulakan objek Bitmap dengan parameter yang berbeza.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mewakilkan Pembina dalam C untuk Mengelakkan Pertindihan Kod?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan