Կարո՞ղ են բազային դասի մասնավոր անդամները ժառանգական լինել:

Բովանդակություն:

Կարո՞ղ են բազային դասի մասնավոր անդամները ժառանգական լինել:
Կարո՞ղ են բազային դասի մասնավոր անդամները ժառանգական լինել:
Anonim

Արդյո՞ք բազային դասի մասնավոր անդամները միշտ ժառանգվում են C++-ում ստացված դասում: Ես ամենուր տեսնում էի, որ բազային դասի մասնավոր անդամները երբեք չեն ժառանգվում ստացված դասում, անկախ նրանից, թե ինչպես եք ժառանգում բազային դասը (մասնավոր, պաշտպանված կամ հանրային):

Արդյո՞ք մասնավոր դասի անդամը կարող է ժառանգվել:

Անձնական անդամներ գերդասարանի

Ա ենթադասը չի ժառանգում իր ծնող դասի մասնավոր անդամներին: Այնուամենայնիվ, եթե սուպերդասը ունի իր մասնավոր դաշտեր մուտք գործելու հանրային կամ պաշտպանված մեթոդներ, դրանք կարող են օգտագործվել նաև ենթադասի կողմից:

Ինչպե՞ս եք ժառանգում բազային դասի մասնավոր անդամները C++-ում:

Մասնավոր ժառանգությամբ, հիմնական դասի հանրային և պաշտպանված անդամը դառնում են ստացված դասի մասնավոր անդամներ: Դա նշանակում է, որ բազային դասի մեթոդները չեն դառնում ստացված օբյեկտի հանրային ինտերֆեյսը: Այնուամենայնիվ, դրանք կարող են օգտագործվել ստացված դասի անդամ ֆունկցիաների ներսում։

Ո՞րն է տարբերությունը մասնավոր և պաշտպանված ժառանգության միջև:

պաշտպանված ժառանգությունը է դարձնում բազային դասի հանրային և պաշտպանված անդամները, որոնք պաշտպանված են ստացվածդասում: մասնավոր ժառանգությունը ածանցյալ դասում բազային դասի հանրային և պաշտպանված անդամներին դարձնում է մասնավոր:

Երբ ժառանգությունը մասնավոր է, բազային դասի մասնավոր մեթոդը?

Երբ ժառանգությունը մասնավոր է, մասնավոր մեթոդները հիմքում ենդասերը անմատչելի են ստացվածդասում (C++-ում): Ժառանգության մասին լրացուցիչ տեղեկությունների համար դիմեք. Ժառանգությունը C++ տարբերակում (A) ճիշտ է:

Խորհուրդ ենք տալիս: