Опишите компонент TextBox . Опишите его назначение и события.
TextBox – это компонент, предназначенный для ввода данных в программу.
Основное событие: TextChanged
Свойства: положение, длина, ширина, текст.
Этот текст пользователь может изменять
Перечислите основные компоненты графического интерфейса и их свойства.
Основные компоненты графической программы:
Button, Label, TextBox
Свойства: Положения, длина, ширина, текст.
Опишите компонент Button. Каково его назначение, какие у него есть события.
Button - предназначен для того, чтобы на него нажимать.
Свойтсва: надпись, имя, положение, длина, ширина.
Основные события: buttonclick.
Предназначен для выполнения некоего полезного действия при нажатии на кнопку.
Как осуществляется доступ к полям объектов. Как передавать объекты функциям.
<имя объекта>.<имя поля или функции>
<имя указателя на объект> -> <имя поля или функции>
<имя объекта>[<индекс>].<имя поля или функции>
Например:
a.str | b->str | c[i].str |
a.display_str() | b-> display_str() | c[i].display_str() |
Первая строка демонстрирует обращение к полям простого объекта, объекта, описанного как указатель на объект, и элемента массива объектов. Вторая строка - обращение к методам соответствующих объектов.
Инициализация полей объектов. При объявлении полей класса не допускается их инициализация, поскольку в момент описания поля память для его размещения еще не выделена. Выделение памяти осуществляется не для класса, а для объектов этого класса, поэтому возможность инициализации полей появляется только после объявления объекта конкретного класса. Значение может заноситься в поле объекта во время выполнения программы несколькими способами:
|
|
-непосредственным присваиванием значения полю объекта;
-внутри любой компонентной функции используемого класса;
-согласно общим правилам C++ с использованием оператора инициализации.
Все перечисленные способы применимы только для инициализации общедоступных полей, описанных в секции public. Инициализация полей, описанных в секциях private и protected, возможна только с помощью компонентной функции. Однако применение указанных способов является не очень удобным и часто приводит к ошибкам. Существует способ инициализации объекта с помощью специальной функции - конструктора, которая автоматически вызывается при объявлении объекта
Дайте определение перегрузки методов класса.
Перегрузка методов класса - это ситуация, когда в классе существует несколько методов с одинаковыми именами и разными прототипами.
Внутри класса:
class vector{
public:
double x,y,z;
void set();//установить значения векторам (прототип)
void show();//вывести векторы на экран
|
|
double mod();//модуль
vector add(vector );//к объекту A прибавляем другой вектор
vector acc(vector );//вычитание
vector multi(double);//вектор на число
double scal(vector);//скалярное
vector multi(vector);//векторное произведение
double ugol(vector);//угол от вектора до вектора
};
Вне класса:
class vector{
public:
double x,y,z;
void show();//вывести векторы на экран
vector add(vector );//к объекту A прибавляем другой вектор
vector(double =0,double =0, double =0);
double & operator [](int);
};
vector operator + (vector, vector);
vector operator * (vector, double);//вектор на число
double operator * (vector, vector);//скалярное
vector operator * (double, vector);//число на вектор
vector operator ++ (vector &);//префиксный инкремент
vector operator ++ (vector &, int);//постфиксный инкремент
Дайте определение наследованию классов. Как происходит наследование полей класса, методов класса. Приведите пример.
Наследование — это механизм создания нового класса на основе уже существующего. При этом к существующему классу могут быть добавлены новые элементы (данные и функции), либо существующие функции могут быть изменены. Основное назначение механизма наследования — повторное использование кодов, так как большинство используемых типов данных являются вариантами друг друга, и писать для каждого свой класс нецелесообразно.
|
|
Объекты разных классов и сами классы могут находиться в отношении наследования, при котором формируется иерархия объектов, соответствующая заранее предусмотренной иерархии классов.
Таблица 1
private | protected | public | |
Доступ из тела класса | открыт | открыт | открыт |
Доступ из производных классов | закрыт | открыт | открыт |
Доступ из внешних функций и классов | закрыт | закрыт | открыт |
Таблица 2
Модификатор наследования → | public | private | protected |
Модификатор доступа ↓ | |||
public | public | public | protected |
private | нет доступа | нет доступа | нет доступа |
protected | protected | protected | protected |
class error{
private:
int a;
protected: (protected остается при наследование в public. Можно обратиться изнутри)
(при private становиться private)
(при protected остается protected)
double b;
public: (при private становятся private)
при protected становится ptotected)
double c;
};
Дата добавления: 2019-02-22; просмотров: 417; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!