Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
|
При выполнении этой программы получаем такой результат.
Старое значение переменной val: 1 Новое значение переменной val: 10 Обратите особое внимание на определение функции f(). void f (int &i) { i = 10; // Модификация аргумента, заданного при вызове. } void swap(int& х, int& у); Нетрудно заметить, что в этом объявлении символ "&" прилегает вплотную к имени типа int, а не к имени переменной х. Некоторые программисты определяют в таком стиле и указатели, связывая символ "*" с типом, а не с переменной, как в этом примере. float* р; Приведенные объявления Если функция возвращает ссылку, это означает, что она возвращает неявный указатель на Значение, передаваемое ею в инструкции return. Этот факт открывает поразительные возможности: функцию, оказывается, можно использовать в левой части инструкции присваивания! Например, рассмотрим следующую простую программу. // Возврат ссылки. #include <iostream> Using namespace std; double &f(); double val = 100.0; Int main() { Double newval; cout << f() << '\n'; // Отображаем значение val. newval = f(); // Присваиваем значение val переменной newval. cout << newval << '\n'; // Отображаем значение newval. f() = 99.1; // Изменяем значение val. cout << f() << '\n'; // Отображаем новое значение val. Return 0; } double &f() { return val; // Возвращаем ссылку на val. } Вот как выглядят результаты выполнения этой программы. 99.1 Рассмотрим эту программу подробнее. Судя по прототипу функции f(), она должна Возвращать ссылку на double-значение. За объявлением функции f() следует объявление Глобальной переменной val, которая инициализируется значением 100. При выполнении Следующей инструкции выводится исходное значение переменной val. cout << f() << '\n'; // Отображаем значение val. Date: 2016-07-25; view: 302; Нарушение авторских прав |