Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Возвращение значения





Возьмем предыдущий пример. Допустим мы хотим использовать переменную k в методе Main. Мы не сможем этого сделать так как эта переменная определена в методе Print, а мы хотим использовать переменную за пределами метода Print. Чтобы у нас появилась такая возможность нужно вернуть значение переменной k в методе Print.

void (пустота) – обозначает, что метод не возвращает никаких значений. Для того, чтобы метод возвращал значение переменной нужно написать тип переменной вместо void, а в самом методе написать комманду: return <название переменной>. Главное: для того, чтобы использовать переменную в методе main – нужно ее сохранить под именем новой переменной.

Пример (на основе предыдущего примера):

Существует 2 способа передачи аргументов:

· 1 способ - вызов по значению (call-by-value). В этом случае значение аргумента копируется в формальный параметр метода. Следовательно, изменения, внесенные в параметр метода, не влияют на аргумент, используемый при вызове.

· 2 способ - вызов по ссылке (call-by-reference). Здесь для получения доступа к реальному аргументу, заданному при вызове, используется ссылка на аргумент. Это значит, что изменения, внесенные в параметр, окажут воздействие на аргумент, использованный при вызове метода.

При передаче методу значения НЕССЫЛОЧНОГО типа (например, int или double) имеет место вызов по значению. Таким образом, то, что происходит с параметром, который получает аргумент, никак не влияет на данные вне метода.

Используя ключевые слова ref и out, можно передать значение любого нессылочного типапо ссылке. Существуют две причины, когда может потребоваться передать нессылочное значение по ссылке:

· позволить методу менять содержимое его аргументов;

· возвращать более одного значения.

REF

Модификатор параметра ref заставляет C# организовать вместо вызова по значению вызов по ссылке. Модификатор ref используется при объявлении метода и его вызове. Пример:


OUT

Модификатор out подобен модификатору ref за одним исключением: его можно использовать только для передачизначения из метода. Предполагается, что out-параметр всегда “поступает” в метод без начального значения, но метод (до своего завершения) обязательно должен присвоить этому параметру значение. Таким образом, после обращения к методу out-параметр будет содержать определенное значение.

REF для ссылочных типов

Если параметр ссылочного типа модифицируется одним из модификаторов ref и out, то по сути реализуется передача ссылки по ссылке. Это позволяет методу изменять объект, на который указывает ссылка-параметр.

Для использования ref/out необходимо:

1. Когда объявляем метод, в скобках перед названием параметра написать ref/out.

2. Объявить переменную в методе Main, перед тем как использовать ее.

3. При использовании нужного метода в методе Main в скобках перед названием аргумента еще раз писать слово ref/out.







Дата добавления: 2015-06-12; просмотров: 626. Нарушение авторских прав; Мы поможем в написании вашей работы!




Шрифт зодчего Шрифт зодчего состоит из прописных (заглавных), строчных букв и цифр...


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


Практические расчеты на срез и смятие При изучении темы обратите внимание на основные расчетные предпосылки и условности расчета...


Функция спроса населения на данный товар Функция спроса населения на данный товар: Qd=7-Р. Функция предложения: Qs= -5+2Р,где...

Весы настольные циферблатные Весы настольные циферблатные РН-10Ц13 (рис.3.1) выпускаются с наибольшими пределами взвешивания 2...

Хронометражно-табличная методика определения суточного расхода энергии студента Цель: познакомиться с хронометражно-табличным методом опреде­ления суточного расхода энергии...

ОЧАГОВЫЕ ТЕНИ В ЛЕГКОМ Очаговыми легочными инфильтратами проявляют себя различные по этиологии заболевания, в основе которых лежит бронхо-нодулярный процесс, который при рентгенологическом исследовании дает очагового характера тень, размерами не более 1 см в диаметре...

Основные симптомы при заболеваниях органов кровообращения При болезнях органов кровообращения больные могут предъявлять различные жалобы: боли в области сердца и за грудиной, одышка, сердцебиение, перебои в сердце, удушье, отеки, цианоз головная боль, увеличение печени, слабость...

Вопрос 1. Коллективные средства защиты: вентиляция, освещение, защита от шума и вибрации Коллективные средства защиты: вентиляция, освещение, защита от шума и вибрации К коллективным средствам защиты относятся: вентиляция, отопление, освещение, защита от шума и вибрации...

Задержки и неисправности пистолета Макарова 1.Что может произойти при стрельбе из пистолета, если загрязнятся пазы на рамке...

Studopedia.info - Студопедия - 2014-2026 год . (0.009 сек.) русская версия | украинская версия