Методы и модификаторы параметров в C#

Лекции по предмету «Программирование»
Информация о работе
  • Тема: Методы и модификаторы параметров в C#
  • Количество скачиваний: 5
  • Тип: Лекции
  • Предмет: Программирование
  • Количество страниц: 3
  • Язык работы: Русский язык
  • Дата загрузки: 2015-01-04 00:04:47
  • Размер файла: 36.66 кб
Помогла работа? Поделись ссылкой
Узнать стоимость учебной работы online!
  • Тип работы
  • Часть диплома
  • Дипломная работа
  • Курсовая работа
  • Контрольная работа
  • Решение задач
  • Реферат
  • Научно - исследовательская работа
  • Отчет по практике
  • Ответы на билеты
  • Тест/экзамен online
  • Монография
  • Эссе
  • Доклад
  • Компьютерный набор текста
  • Компьютерный чертеж
  • Рецензия
  • Перевод
  • Репетитор
  • Бизнес-план
  • Конспекты
  • Проверка качества
  • Экзамен на сайте
  • Аспирантский реферат
  • Магистерская работа
  • Научная статья
  • Научный труд
  • Техническая редакция текста
  • Чертеж от руки
  • Диаграммы, таблицы
  • Презентация к защите
  • Тезисный план
  • Речь к диплому
  • Доработка заказа клиента
  • Отзыв на диплом
  • Публикация статьи в ВАК
  • Публикация статьи в Scopus
  • Дипломная работа MBA
  • Повышение оригинальности
  • Копирайтинг
  • Другое
Узнать стоимость
Информация о документе

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

Если Вы являетесь автором текста представленного на данной странице и не хотите чтобы он был размешён на нашем сайте напишите об этом перейдя по ссылке: «Правообладателям»

Можно ли скачать документ с работой

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

Методы и модификаторы параметров в C#

Оформленная подпрограмма имеет вид:
<доступ> <тип> (<список параметров>)
{
<операторы>
}
Например, подпрограмма функция
public int get_num()
{
return Prod_Num;
}
Обычная подпрограмма
public void SwapStr (ref string s1, ref string s2)
{
string temp = s1;
s1 = s2;
s2 = temp;
}
Подпрограмма может возвращать вычисленное значение через свое имя, тогда перед именем подпрограммы записывается возвращаемое значение, а внутри подпрограммы имеется оператор return. Если подпрограмма не возвращает таким способом значение, то тип возвращаемого значения void.
Параметры, передаваемые в подпрограмму, могут передаваться по значению или по ссылке. При передаче по значению значение параметра копируется в память подпрограммы. Если это параметр в подпрограмме будет изменен, то его значение, которое было при вызове, не изменится. При передаче параметра по ссылке, либо вычисленное значение возвращается из подпрограммы, либо вообще обработка выполняется в памяти вызывающей программы (таким способом обычно обрабатываются массивы). Для управления этими режимами обработки применяются модификаторы, которые записываются перед именем подпрограммы.

Если никакой модификатор перед параметром не записан (или записан модификатор in), предполагается передача по значению.
Модификатор out указывает, что параметр передается по ссылке. Другими словами, в подпрограмме будет вычислено значение параметра и передано в вызывающую программу. Если в подпрограмме значение этому параметру не будет присвоено, компилятор выдаст сообщение об ошибке на стадии компиляции программы.
Модификатор ref указывает, что обработка будет выполняться в памяти вызывающей программы. Если объекту, на который ссылается параметр, память не выделена, то будет выдано сообщение об ошибке на стадии компиляции программы. Если в подпрограмме значение этому параметру не будет присвоено, компилятор сообщение об ошибке не выдаст.
Модификатор params указывает, что в подпрограмму передается список значений, разделенных запятыми. Ниже приведен пример.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace avrg_params
{
class Program
{
static double Calculateavrg(params double [ ] values)
{
// Вывод количества значений
Console.WriteLine ("В подпрограмму передано {0} чисел",values.Length);
double sum = 0;
if(values.Length == 0) return sum;
for (int i = 0; i < values.Length; i++)
sum += values [i];
return (sum / values.Length);
}
static void Main(string[] args)
{
Console.WriteLine ("Проверка модификатора params");
double avrg;
// Передача списка значений double
avrg = Calculateavrg(7.0, 8.2, 5.7, 4.2, 9.3, 1.8);
Console.WriteLine("Среднее значение = {0:f2}
", avrg);
// Передача списка с помощью массива по имени list
double [ ] list = { 4.0, 3.2, 5.7, 2.9 };
avrg = Calculateavrg(list);
Console.WriteLine("Среднее значение = {0:E2}
", avrg);
// Значения не переданы
avrg = Calculateavrg();
Console.WriteLine("Среднее значение = {0:G}", avrg);
Console.ReadKey();// Останов экрана
}
}
}
Результат вывода программы

Модификатор params в списке параметров может быть только один и должен записываться последним.