Rumah >pembangunan bahagian belakang >C++ >Apakah Cara Yang Betul untuk Mewakilkan Pembina dalam C ?

Apakah Cara Yang Betul untuk Mewakilkan Pembina dalam C ?

Barbara Streisand
Barbara Streisandasal
2024-11-20 15:34:19241semak imbas

What's the Correct Way to Delegate Constructors in C  ?

Mewakilkan Pembina

Mewakilkan pembina melibatkan panggilan pembina lain dari dalam badan pembina untuk mengelakkan pelaksanaan kod berlebihan.

Betul Pendekatan

Blok kod kedua yang dibentangkan ialah pelaksanaan yang betul untuk delegasi pembina dalam C . Ia menggunakan senarai pemula pembina:

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

Senarai Permulaan

Senarai pemula membenarkan anda untuk memulakan secara langsung objek semasa pembinaan. Dengan menghantar nilai HBITMAP kepada pembina Bitmap(HBITMAP) dalam senarai permulaan, anda mewakilkan pembinaan kepada pembina lain.

Pendekatan Salah

Blok kod pertama percubaan untuk mewakilkan menggunakan:

Bitmap(BMP);

Walau bagaimanapun, ini mewujudkan sementara Objek bitmap dan tidak mewakilkan kepada pembina sedia ada.

Skop Delegasi

Perhatikan bahawa delegasi pembina hanya boleh berlaku dalam senarai permulaan pembina dan bukan dalam badan pembina. Menggunakannya di dalam badan akan membawa kepada pembinaan rekursif, yang tidak dibenarkan dalam C .

Atas ialah kandungan terperinci Apakah Cara Yang Betul untuk Mewakilkan Pembina dalam C ?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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