Шукаєте відповіді та рішення тестів для Об'єктно-орієнтоване програмування? Перегляньте нашу велику колекцію перевірених відповідей для Об'єктно-орієнтоване програмування в vns.lpnu.ua.
Отримайте миттєвий доступ до точних відповідей та детальних пояснень для питань вашого курсу. Наша платформа, створена спільнотою, допомагає студентам досягати успіху!
Дано визначення класів:
class C1 {
};
class C2 {
C1 *f1; //
};
Яка
саме команда повинна бути в тілі конструктора класу С2 для
того щоб правильно створювати об’єкти цього класу? (Написати фрагмент повного
опису конструктора) Відповідь пояснити.
Дано визначення класів і об’єктів:
class A {
public:
int a;
};
class B: public A {
public:
int b;
};
class C: public A, public B {
public:
int c;
};
class D: public B, public C {
public:
int d;
};
A oA;
B oB;
C oC;
D oD;
Якими будуть розміри об’єктів оA, oB, oC, oD ? (дані типу int займають 4 байти)
Записати всі поля об’єктів оA, oB, oC, oD
Дано визначення класів і об’єктів:
class A {
public:
int a;
};
class B: public A {
public:
int b;
};
class C: public B {
public:
int c;
};
class D: public A, public B, public C {
public:
int d;
};
A oA;
B oB;
C oC;
D oD;
Якими будуть розміри об’єктів оA, oB, oC, oD ? (дані типу int займають 4 байти)
Записати всі поля об’єктів оA, oB, oC, oD
Дано визначення класів і об’єктів:
class C1 {
public:
virtual void f(){}
void DoIt(){}
};
class C2: public C1 {
public:
void DoIt(){}
};
C1 *a = new C2();
Написати всі вірні звертання до того методу DoIt() об’єкту a, який визначений в класі C1. Відповідь пояснити.
Поясніть, що таке «зрізка», або «розщеплення».
Від чого залежить кількість таблиць віртуальних методів?
Які методи не успадковуються?
Дано визначення класів і об’єктів:
class C1 {
virtual void f(){}
};
class C2: public C1 {
};
C1 *a = new C2();
Навести приклади, як в програмі можна визначити справжній тип об’єкта a.
Який вид успадковування «ближче» до композиції: відкрите чи закрите?
Дано визначення класів:
class C1 {
public:
void aPolymorphMethod(); //
};
class C2: public C1 {
public:
void aMethod();
};
void C1::aPolymorphMethod()
{
aMethod();
}
void C2::aMethod(){}
Виправити помилки у визначенні цих класів, які роблять неможливим поліморфізм. Відповідь пояснити.
Отримайте необмежений доступ до відповідей на екзаменаційні питання - встановіть розширення Crowdly зараз!