Tofauti Muhimu – Kubadilisha dhidi ya Kupakia kupita kiasi katika C
Tofauti kuu kati ya kubatilisha na kupakia kupita kiasi katika C ni kwamba ufungaji wa wito wa njia iliyobatilishwa kwa ufafanuzi wake hufanyika wakati wa utekelezaji huku ufungaji wa wito wa mbinu uliojaa kwenye ufafanuzi wake hufanyika wakati wa mkusanyiko.
C ni lugha ya programu ya madhumuni ya jumla iliyotengenezwa na Microsoft. Faida kuu ya Cni kwamba inasaidia Upangaji wa Object Oriented (OOP). Nguzo moja ya OOP ni Polymorphism. Inatoa kitu kuwa na tabia nyingi. Kuna aina mbili katika Polymorphism inayojulikana kama overriding na overloading. Nakala hii inajadili tofauti kati ya njia ya kupitisha na kupakia zaidi katika C.
Ni Nini Kinachopindua katika C?
Kuna dhana moja nyingine muhimu katika OOP ni urithi. Ni kutumia sifa na mbinu za darasa lililopo tayari. Inaboresha utumiaji wa nambari tena. Darasa lililopo tayari ni darasa la msingi, na darasa jipya linajulikana kama darasa linalotokana. Katika kupitisha upolimishaji, kunapaswa kuwa na darasa la msingi na darasa linalotokana. Kufunga kwa simu ya njia iliyobatilishwa kwa ufafanuzi hufanyika wakati wa utekelezaji. Mfano ni kama ifuatavyo.
Kielelezo 01: Mpango wa C wenye Ubatili
Kulingana na mpango ulio hapo juu, umbo la darasa ndilo darasa la msingi, na lina njia ya kuonyesha. Darasa Mstatili na Pembetatu ni madarasa yanayotokana. Madarasa haya yaliyotolewa pia yana onyesho la mbinu sawa na utekelezaji wao wenyewe.
Kwanza, kigezo cha marejeleo kinaundwa. Inaelekeza kwenye kitu cha Umbo. Kwa hivyo, njia ya kuonyesha ya darasa la Shape itafanya. Kisha, tofauti ya kumbukumbu inaelekeza kwenye kitu cha Mstatili. Kwa hivyo, njia ya kuonyesha ya darasa la Mstatili itafanya. Mwishowe, utofauti wa kumbukumbu unaelekeza kwa kitu cha Pembetatu. Kwa hivyo, njia ya kuonyesha ya darasa la Triangle itafanya. Mbinu ya kuonyesha ya darasa la msingi imebatilishwa na mbinu za uonyeshaji za madarasa yaliyotolewa.
Njia ya kutumia itaamuliwa wakati wa utekelezaji. Darasa la Umbo limeandikwa na neno kuu la 'virtual'. Madarasa ya Mstatili na Pembetatu yameandikwa kwa neno kuu la 'kubatilisha'. Maneno muhimu haya yasipotumika, matokeo yatachapisha maudhui ya mbinu ya kuonyesha ya darasa la Umbo kwa wote.
Kupakia kupita kiasi ni nini katika C?
Katika upakiaji kupita kiasi, mbinu nyingi zina jina moja lakini zenye vigezo tofauti. Vigezo vinaweza kuwa vya aina tofauti. Njia zinaweza pia kuwa na idadi tofauti ya vigezo. Njia ya upakiaji kupita kiasi hufanyika katika darasa moja. Kufunga kwa njia zilizojaa zaidi kwa ufafanuzi hufanyika wakati wa mkusanyiko. Rejelea programu ya C iliyo hapa chini.
Kielelezo 02: Mpango wa C wenye Upakiaji kupita kiasi
Kulingana na mpango ulio hapo juu, darasa A lina mbinu mbili zenye jina moja linaloitwa sum. Wana aina tofauti za vigezo. Katika programu kuu, kitu cha A kinaundwa. Jumla (2, 3) itatumia njia ya jumla na nambari kamili. Jumla (5.1, 7.94) itatumia njia ya jumla yenye thamani mbili. Njia zote mbili zina jina sawa na idadi sawa ya vigezo. Lakini aina za parameter ni tofauti. Njia inayotakiwa inaitwa ipasavyo. Kupakia kupita kiasi kunaweza pia kutokea ikiwa majina ya njia na aina za vigezo ni sawa lakini idadi ya vigezo ni tofauti.
Kuna Ulinganifu Gani Kati ya Kupindua na Kupakia kupita kiasi katika C?
Kuzidisha na Kupakia katika C ni aina za upolimishaji
Kuna tofauti gani kati ya Kupindua na Kupakia kupita kiasi katika C?
Kuzidisha dhidi ya Kupakia kupita kiasi katika C |
|
Kubatilisha katika C ni kutoa utekelezaji mahususi katika mbinu ya darasa inayotolewa kwa mbinu iliyopo tayari katika darasa la msingi. | Kupakia kupita kiasi katika C ni kuunda mbinu nyingi kwa jina moja na utekelezaji tofauti. |
Vigezo | |
Katika Ubatilishaji wa C, mbinu zina jina sawa, aina za kigezo sawa na idadi sawa ya vigezo. | Katika Upakiaji wa C, mbinu zina jina sawa lakini idadi tofauti ya vigezo au aina tofauti ya vigezo. |
Matukio | |
Katika C, ubatilishaji hutokea ndani ya darasa la msingi na darasa linalotokana. | Katika C, upakiaji kupita kiasi hutokea katika darasa moja. |
Muda wa Kufunga | |
Kufunga kwa wito wa mbinu iliyobatilishwa kwa ufafanuzi wake hufanyika wakati wa utekelezaji. | Kufunga kwa wito wa mbinu iliyopakiwa kupita kiasi kwa ufafanuzi wake hufanyika wakati wa mkusanyiko. |
Visawe | |
Kubatilisha kunaitwa kama upolimishaji wa wakati wa utekelezaji, upolimishaji unaobadilika au kuchelewesha kufunga. | Kupakia kupita kiasi kunaitwa upolimishaji wa wakati wa kukusanya, upolimishaji tuli au kuunganisha mapema. |
Muhtasari – Kubatilisha dhidi ya Kupakia katika C
Kuzidisha na Kupakia kupita kiasi ni aina mbili za upolimishaji. Tofauti kati ya kubatilisha na kupakia kupita kiasi katika C ni kwamba ufungaji wa wito wa njia iliyobatilishwa kwa ufafanuzi wake hufanyika wakati wa utekelezaji huku ufungaji wa simu ya mbinu iliyojaa kwa ufafanuzi wake hufanyika wakati wa mkusanyiko.