ВУЗ:
Составители:
Рубрика:
23
2.friend iostream & operator »
(iostream & in, имя _ класс & имя объекта)
полностью соответствует оператору » из класса iostream
1 параметр – входной поток in – типа iostream &.
3.friend iostream & operator «
(iostream & out, имя_ класса имя объекта);
соответствует оператору вывода из класса iostream.
1параметр – выходной поток out. – типа iostream &.
4.добавить оба оператора в абстрактный класс и вне класса описать как функцию.
» ~ input ( )
« - output ( )
пример:
class my
{…
friend iostream & operator »
(iostream & in, my obj);
friend iostream & operator «
(iostream out, my obj);
…
};
вне класса
iostream operator » (iostream & in, my & obj)
{in » obj.x » obj.y;
return in;
}
my & obj – т.к. надо вернуть введенную переменную
во внешнюю среду.
iostream & operator « (iostream & out, my obj)
{ out « obj.x « “ “ « obj.y;
out « end l ;
return out;
}
void main ( )
{ my m1, m2;
in = cin » m1»m2;
out = cout « m1 « m2;
};
Шаблоны типа
С помощью шаблонов типа можно достаточно просто определить и реализовать
без потерь в эффективности выполнения программы и, не отказываясь от статического
контроля типов, такие контейнерные классы, как списки и ассоциативные массивы.
Кроме того, шаблоны типа позволяют определить сразу для целого семейства типов
обобщенные (генерические) функции, например, такие, как sort (сортировка). В качест
-
ве примера шаблона типов и его связи с другими конструкциями языка приводится се-
мейство списочных классов. Чтобы показать способы получения программы из в зна-
чительной степени независимых частей, приводится несколько вариантов шаблонной
функции sort(). В конце определяется простой шаблон типа для ассоциативного масси-
23 2.friend iostream & operator » (iostream & in, имя _ класс & имя объекта) полностью соответствует оператору » из класса iostream 1 параметр – входной поток in – типа iostream &. 3.friend iostream & operator « (iostream & out, имя_ класса имя объекта); соответствует оператору вывода из класса iostream. 1параметр – выходной поток out. – типа iostream &. 4.добавить оба оператора в абстрактный класс и вне класса описать как функцию. » ~ input ( ) « - output ( ) пример: class my {… friend iostream & operator » (iostream & in, my obj); friend iostream & operator « (iostream out, my obj); … }; вне класса iostream operator » (iostream & in, my & obj) {in » obj.x » obj.y; return in; } my & obj – т.к. надо вернуть введенную переменную во внешнюю среду. iostream & operator « (iostream & out, my obj) { out « obj.x « “ “ « obj.y; out « end l ; return out; } void main ( ) { my m1, m2; in = cin » m1»m2; out = cout « m1 « m2; }; Шаблоны типа С помощью шаблонов типа можно достаточно просто определить и реализовать без потерь в эффективности выполнения программы и, не отказываясь от статического контроля типов, такие контейнерные классы, как списки и ассоциативные массивы. Кроме того, шаблоны типа позволяют определить сразу для целого семейства типов обобщенные (генерические) функции, например, такие, как sort (сортировка). В качест- ве примера шаблона типов и его связи с другими конструкциями языка приводится се- мейство списочных классов. Чтобы показать способы получения программы из в зна- чительной степени независимых частей, приводится несколько вариантов шаблонной функции sort(). В конце определяется простой шаблон типа для ассоциативного масси-
Страницы
- « первая
- ‹ предыдущая
- …
- 21
- 22
- 23
- 24
- 25
- …
- следующая ›
- последняя »