Лекция: Имя объекта.имя функции();
Пример:
#include<iostream.h>
class rec
{
private:
double len;
double wid;
public:
double Len(){ return len/100;}
double Wid(){ return wid/100;}
double Area(){ return len*wid; }
void assign( double Len,double Wid);
};
void rec::assign( double Leng,double Wide)
{
//присваиваем значения переменным private
len=Leng;
wid=Wide;
}
main()
{
rec re;
double len1,wid1;
cout<<«задайте длину в см »; cin>>len1;
cout<<«задайте ширину в см »;cin>>wid1;
re.assign(len1,wid1);
cout<<"\n длина="<<re.Len();
cout<<"\n ширина="<<re.Wid();
cout<<"\n площадь в см ="<<re.Area()<<«cм кв.»;
cout<<"\n площадь в м ="<<re.Area()/10000.<<«м кв.»;
}
При заданных размерах прямоугольника (20см х 30см)
Результатом работы программы будет:
длина=0.2
ширина=0.3
площадь в см =600 cм кв.
площадь в м =0.06 м кв.
2.1. Полиморфизм в С++.
Слово полиморфизм образовалось от греческих слов poly(много) и morphos (форма) то есть обозначает множественность форм. Полиморфизм – это свойство кода языка С++ вести себя по разному в зависимости от ситуации возникающей в момент выполнения. Смысловая иллюстрация полиморфизма видна на примере использования глаголов чистить, перемещать, чинить, которые в зависимости от предмета над которым будет совершено действие могут приобретать совершенно разный смысл. Чистить картофель и чистить ковер значит осуществлять абсолютно различные действия, так же как перемещать карандаш или перемещать дом. Таким образом, глагол можно связать с конкретным действием только после того как станет известным объект на который следует воздействовать. Примером полиморфизма в С++ являются перегруженные функции и перегруженные операции. Операции << и >> используемые для ввода вывода и для сдвига выглядят совершенно одинаково, но имеют разный смысл. Причина этого в том, что в заголовочном файле iostream.h знаки этих операций перегружены. Примером перегруженной операции является и операция *, которая служит одновременно для обозначения операции умножения и операции доступа по адресу в указателях.
Задание для самоконтроля:
Написать программу выполняющую операции с комплексными числами сложение, вычитание, умножение, деление (+,-,*,/)