+79655558415
Знаток
(263)
2 недели назад
Давайте разберем каждый вопрос по порядку:
1. **Какая из перечисленных функций не может быть конструктором?**
- Ответ: a. `void String()`
Объявление конструктора не должно иметь возвращаемого типа и в случае с `void String()`, это не соответствует типичному объявлению конструктора.
2. **Вызовет данный код ошибку компиляции?**
- Ответ: a. `Ошибка: имя деструктора должно совпадать с именем класса`
В данном классе `Rectangle`, имена конструктора и деструктора должны совпадать с именем класса, поэтому обозначение деструктора как `~Rect()` вызовет ошибку компиляции.
3. **Какой конструктор вызывается в данном случае?**
- Ответ: c. `Конструктор без параметров (по умолчанию)`
В данном случае создается массив объектов класса `demo`, что вызывает вызов конструктора по умолчанию, т.е. `demo()` без параметров.
Надеюсь, это поможет вам разобраться в вопросах по объектно-ориентированному программированию на C++!
a.
void String ()
b.
String (String & s)
c.
String (const int a)
d.
String ()
Вызовет данный код ошибку компиляции?
class Rectangle {
public:
int a, b;
int sum ();
int square ();
~ Rect ();
};
a.
Ошибка: имя деструктора должно совпадать с именем класса
b.
Ошибка: имя деструктора не может начинаться с маленькой буквы
c.
Ошибки нет, все записано верно
d.
Ошибка: никакой идентификатор в С ++ не может начинаться со знака «~»
Представлен пример объявления класса и создание объекта:
class demo {
int x;
public:
demo() { x = 0; }
demo(int i) { x = i; }
};
void main() {
class demo a[20];
}
Какой конструктор вызывается в данном случае?
a.
Конструктор не вызывается в данном случае
b.
Конструктор с параметрами
c.
Конструктор без параметров (по умолчанию)
d.
Конструктор копирования
Представлен класс Time
class Time {
public:
int hour, min, sec;
Time(int h, int m, int s) { hour = h; min = m; sec = s; }; // Конструктор с параметрами
~Time() {}; // Деструктор
// Функции доступа
int get_hour();
int get_min();
int get_sec();
Time & set_hour(int);
Time & set_min(int);
Time & set_sec(int);
};