Junior — Middle
C++-də yalnız saf virtual funksiyaları ehtiva edən və birbaşa yaradıla bilməyən sinif təyin etmək mümkündürmü?
sobes.tech Süni İntellekt
AI-dan cavab
Bəli, C++-də yalnız saf virtual funksiyalar ehtiva edən sinif təyin etmək mümkündür və belə sinif birbaşa yaradıla bilməz. Bu sinif abstrakt sinif adlanır. O, interfeys və ya əsas sinif kimi xidmət edir və irsi alanların bütün saf virtual funksiyaları həyata keçirməsini tələb edir.
Nümunə:
class Interface {
public:
virtual void doSomething() = 0; // saf virtual funksiya
virtual ~Interface() = default;
};
// Interface obyektini birbaşa yaratmaq olmaz:
// Interface obj; // tərtib xətası
class Implementation : public Interface {
public:
void doSomething() override {
// həyata keçirmə
}
};
int main() {
Implementation impl;
impl.doSomething();
}