Студопедия КАТЕГОРИИ: АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Список используемых методов расширения LINQ
Передача параметров в методы Параметры можно передавать по значению и по ссылке. Если не указано обратное, то в С# все параметры передаются по значению. Если переменная передается по значению, вызываемый метод получает копию этой переменной, а это значит, что все изменения в ней по завершении метода будут утеряны. Для передачи параметров по ссылке в языке С# предусмотрено два ключевых слова— ref и out. Первое из них требует предварительной инициализации объекта, на который передается ссылка, а второе — не требует. class Rectangle { int xPos; int yPos; public Rectangle() { xPos = yPos = 0; } public void GetPosition(out int x, out int y) { x = xPos; у = yPos; } } class RefParamApp { static void Main(string[] args) { Rectangle rect; rect = new RectangleO; int xCurrent, yCurrent; rect.GetPosition(out xCurrent, out yCurrent); Console.WriteLine("Расположение прямоугольника: ({0}, {1})”, xCurrent, yCurrent); }} Именованные аргументы Обычно параметры должны передаваться в метод в том же порядке, в котором они определены. Именованные аргументы позволяют передавать параметры в любом порядке. То есть для приведенного ниже метода: string FullName(string firstName, string lastName) { return firstName + " " + lastName; } возможны следующие вызовы, которые вернут одно и то же полное имя: Fu1IName("John", "Doe"); FullName(lastName: "Doe", firstName: "John"); Необязательные аргументы Параметры также могут быть необязательными. Для таких параметров должны определяться значения по умолчанию. Необязательные параметры должны располагаться последними в списке. Поэтому следующее объявление метода будет неправильным: void TestMethod(int optionalNumber = 10, int notOptionalNumber) { System.Console.Write(optionalNumber + notOptionalNumber); } Чтобы этот метод работал, параметр optionalNumber должен быть определен последним. Если вас не устраивают необязательные параметры, для достижения того же эффекта можно применить перегрузку методов. |
||
Последнее изменение этой страницы: 2018-04-12; просмотров: 501. stydopedya.ru не претендует на авторское право материалов, которые вылажены, но предоставляет бесплатный доступ к ним. В случае нарушения авторского права или персональных данных напишите сюда... |