Главная Случайная страница


Полезное:

Как сделать разговор полезным и приятным Как сделать объемную звезду своими руками Как сделать то, что делать не хочется? Как сделать погремушку Как сделать так чтобы женщины сами знакомились с вами Как сделать идею коммерческой Как сделать хорошую растяжку ног? Как сделать наш разум здоровым? Как сделать, чтобы люди обманывали меньше Вопрос 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; Нарушение авторских прав



mydocx.ru - 2015-2024 year. (0.005 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию