Реферат по предмету "Программирование"


Перегрузка операций

Перегрузка операций

Настоящий класс ostream определяет операцию

Чтобы определить @, где @ - некоторая операция языка C++,
для каждого определяемого пользователем типа вы определяете функцию с именем
operator@, которая получает параметры соответствующего типа. Например:

class ostream {

  //...

  ostream
operator

};

ostream ostream::operator

{

  while (*p)
buf.sputc(*p++);

  return *this;

}

определяет операцию

а если применить операцию взятия адреса, то вы получите
адрес объекта, на который ссылается ссылка:

&s1 == &my_out

Первая очевидная польза от ссылок состоит в том, чтобы
обеспечить передачу адреса объекта, а не самого объекта, в функцию вывода (в
некоторых языках это называется передачей параметра по ссылке):

ostream& operator

  return s


}

Достаточно интересно, что тело функции осталось без
изменений, но если вы будете осуществлять присваивание s, то будете
воздействовать на сам объект, а не на его копию. В данном случае то, что
возвращается ссылка, также повышает эффективность, поскольку очевидный способ
реализации ссылки - это указатель, а передача указателя гораздо дешевле, чем
передача большой структуры данных.

Ссылки также существенны для определения потока ввода,
поскольку операция ввода получает в качестве операнда переменную для
считывания. Если бы ссылки не использовались, то пользователь должен был бы
явно передавать указатели в функции ввода.

class istream {

  //...

  int state;

public:

  istream&
operator>>(char≈);

  istream&
operator>>(char*);

  istream&
operator>>(int&);

  istream&
operator>>(long&);

  //...

};

Заметьте, что для чтения long и int используются разные
функции, тогда как для их печати требовалась только одна. Это вполне обычно, и
причина в том, что int может быть преобразовано в long по стандартным правилам
неявного преобразования, избавляя таким образом программиста от беспокойства по
поводу написания обеих функций ввода.
Список литературы

Для подготовки данной работы были использованы материалы
с сайта http://www.realcoding.net


Не сдавайте скачаную работу преподавателю!
Данный реферат Вы можете использовать для подготовки курсовых проектов.

Поделись с друзьями, за репост + 100 мильонов к студенческой карме :

Пишем реферат самостоятельно:
! Как писать рефераты
Практические рекомендации по написанию студенческих рефератов.
! План реферата Краткий список разделов, отражающий структура и порядок работы над будующим рефератом.
! Введение реферата Вводная часть работы, в которой отражается цель и обозначается список задач.
! Заключение реферата В заключении подводятся итоги, описывается была ли достигнута поставленная цель, каковы результаты.
! Оформление рефератов Методические рекомендации по грамотному оформлению работы по ГОСТ.

Читайте также:
Виды рефератов Какими бывают рефераты по своему назначению и структуре.

Сейчас смотрят :

Реферат Империя Карла Великого и ее распад
Реферат Реклама как фактор стимуляции сбыта
Реферат Проектирование, строительство и реконструкция железных дорог
Реферат All My Flowers Are Gone Essay Research
Реферат Правовое государство. Права и свободы человека и гражданина
Реферат Война и политика в письмах Императрицы Александры Федоровны к Николаю II (1914-1915)
Реферат Расчет водоснабжения поселка и насосной установки Определение расхода
Реферат Lolita Essay Research Paper My analysis of
Реферат Совет революционного командования Ирака
Реферат Banishment Censorship Of Twain
Реферат «Инновации как продукт и инструмент предпринимательства. Предложения и технологии коммерциализации» 21-22 июня 2011 года, г
Реферат Активность и продуктивность основных словообразовательных моделей
Реферат Использование корреляционного анализа в работе школьного психолога
Реферат The Color Purple Essay Research Paper Andrea
Реферат Анализ деятельности ЗАО "ВЗЛЕТ" и его филиала ООО "ВЗЛЕТ-БАЙКАЛ"