Быстрый поиск:
Интернет магазин книг, книги купить книги, магазин книги Украины, доставка книги почтой, новые книги.
    товаров: 0 шт.
        сумма: 0 грн.
 
Каталог книги | Новые книги | Оплата | Доставка книги | Контакты | Помощь | Подписаться на RSS-новинки
 
 

     Книги по бизнесу
   Книги банки,деньги,кредит
   Книги по бизнесу
   Книги по бухучету
   Книги инвестиционный бизнес
   Книги коммерция и продажи
   Книги по маркетингу и рекламе
   Книги по менеджменту
   Книги по праву
   Книги по предпринимательству
   Книги по финансам
   Книги по экономике
   Книги по экономической теории
     Книги компьютерные
   Книги CAD-ы
   Книги 3d MAX
   Книги ACCESS
   Книги Adobe
   Книги Assembler
   Книги Basic
   Книги C, C++,С#
   Книги Delphi
   Книги EXCEL
   Книги HTML,XML, Dynamic, CSS
   Книги Java
   Книги JavaScript
   Книги Linux
   Книги MAC
   Книги Maya
   Книги OFFICE
   Книги Oracle
   Книги Pascal
   Книги Perl
   Книги PHP
   Книги SQL
   Книги UML
   Книги Unix
   Книги VBA
   Книги Visual Studio
   Книги WEB дизайн
   Книги Windows 2000
   Книги Windows Server
   Книги Windows Vista
   Книги Windows XP
   Книги WORD
   Книги Алгоритмы
   Книги 1C Учет
   Книги Издательские системы
   Книги по информатике
   Книги по компьютерной безопасности
   Книги по компьютерному железу
   Книги компьютерные сети
   Книги мультимедиа
   Книги Нейронные сети
   Книги ООП
   Книги Примочки программирования
   Книги по программированию для WEB
   Книги Прочая графика
   Книги прочая разработка
   Книги прочие CAD
   Книги прочие базы данных
   Книги прочие ОС
   Книги прочие офисное ПО
   Книги самоучители
   Книги Цифровое фото
   Книги электронная коммерция
   Книги Corel
   Книги Windows 7
   Книги Прочее для интернет
   Книги SEO оптимизация и продвижение
   Книги SolidWorks
     Книги по психологии
   Книги по психоанализу
   Книги по психологии
   Книги по психологии бизнеса
   Книги психология женский клуб
   Книги психология НЛП
   Книги психология общая
   Книги психология популярная
   Книги психология прикладная
   Книги психология прочее
   Книги психология психотерапия
   Книги психология социальная
   Книги психология тест
   Книги психология тренинг
     Знаменитые люди
     Книги о детях
     Естественные науки



492-347-068
order#superkniga.com.ua


Принимаем к оплате:
Оплатить WebMoney
Оплатить WebMoney
Оплатить WebMoney
Оплатить WebMoney
Оплатить WebMoney

Реклама
 
  Книги компьютерные - Книги C, C++,С#
Купить книгу  Язык программирования C#. Классика Computers Science. 4-е изд. Хейлсберг
 
 
Share |
Купить книгу почтой в интернет магазине Язык программирования C#. Классика Computers Science. 4-е изд. Хейлсберг

357.7 грн.

 Купить Язык программирования C#. Классика Computers Science. 4-е изд. Хейлсберг     Купить Язык программирования C#. Классика Computers Science. 4-е изд. Хейлсберг
 2012г.
Количество страниц:  784


Перед вами - IV-е издание главной книжки по языку C#, написанной легендой программирования - Андерсом Хейлсбергом, архитектором C#, Delphi и Turbo Pascal, совместно с другими экспертами, входившими в группу девелоперов C# компании Майкрософт. Издание Язык программирования C#. Классика Computers Science. 4-е изд. Хейлсберг  является максимально полным описанием языка и наиболее авторитетным источником информации по этой теме, построенным в формате сборника спецификаций, включающих в себя описание синтаксиса, сопутствующие материалы и примеры, и образцы кода. Эта книга - особого рода "библия" разработчика, которая легко может заменить как MSDN, так и иные книжки по C#. IV-е издание содержит описание новых особенностей C# 4.0, включая динамическое связывание, именованные и необязательные характеристики, и контравариантные и ковариантные обобщенные типы. Цель таких новшеств - расширение возможностей C# для взаимодействия с объектами, не относящимися к платформе .NET. Отличительная особенность нового издания тоже заключается в том, что каждая глава книжки содержит широкие комментарии, написанные известными "гуру" программирования, такими как Джон Скит, Джозеф Альбахари, Билл Вагнер, Кристиан Нейгел, Эрик Липперт и др.
 
Оглавление книги

Язык программирования C#. Классика Computers Science. 4-е изд. Хейлсберг 

 
Предисловие   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  21
К читателю   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Об авторах   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Об авторах комментариев   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Глава 1. Введение  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
1.1. Здравствуй, Мир  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .30
1.2. Структура программы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .31
1.3. Типы и переменные . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .33
1.4. Выражения  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .39
1.5. Операторы  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .41
1.6. Классы и объекты. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .45
1.6.1. Элементы класса  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .46
1.6.2. Доступность  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .47
1.6.3. Параметры-типы  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .48
1.6.4. Базовые классы  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .49
1.6.5. Поля  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .50
1.6.6. Методы. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .51
1.6.6.1. Параметры . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .52
1.6.6.2. Тело метода и локальные переменные  . . . . . . . . . . . . . . . . . . . . .55
1.6.6.3. Статические методы и методы экземпляра  . . . . . . . . . . . . . . . . .56
1.6.6.4. Виртуальные, переопределенные и абстрактные методы . . . . .57
1.6.6.5. Перегрузка методов . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .60
1.6.7. Другие функциональные элементы класса  . . . . . . . . . . . . . . . . . . . . . . .62
1.6.7.1. Конструкторы. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .64
1.6.7.2. Свойства. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .64
1.6.7.3. Индексаторы  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .67
1.6.7.4. События  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .68
1.6.7.5. Операции  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .69
1.6.7.6. Деструкторы  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .70
1.7. Структуры  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  . 71
1.8. Массивы  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  . 73
1.9. Интерфейсы  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .75
1.10. Перечисления. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .77
1.11. Делегаты . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .79
1.12. Атрибуты . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
Глава 2. Лексическая структура . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
2.1. Программы  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .83
2.2. Грамматики. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .83
2.2.1. Система обозначений  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .83
2.2.2. Лексическая грамматика. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .85
2.2.3. Синтаксическая грамматика. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .85
2.3. Лексический анализ  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .85
2.3.1. Символы конца строки  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .86
2.3.2. Комментарии  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .86
2.3.3. Пробельные символы  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .88
2.4. Лексемы  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  . 88
2.4.1. Управляющие последовательности Unicode  . . . . . . . . . . . . . . . . . . . . . .88
2.4.2. Идентификаторы  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .89
2.4.3. Ключевые слова  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .92
2.4.4. Литералы (константы)  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .93
2.4.4.1. Булевские константы  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .93
2.4.4.2. Целочисленные константы  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .93
2.4.4.3. Вещественные константы  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .95
2.4.4.4. Символьные константы  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .96
2.4.4.5. Строковые константы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .97
2.4.4.6. Константа null  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .100
2.4.5. Знаки операций и пунктуации  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .100
2.5. Директивы препроцессора  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .101
2.5.1. Символы условной компиляции. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .102
2.5.2. Выражения препроцессора  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .103
2.5.3. Директивы объявлений . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .103
2.5.4. Директивы условной компиляции  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .105
2.5.5. Директивы диагностики  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .108
2.5.6. Директивы region  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .109
2.5.7. Директивы line. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .109
2.5.8. Директива pragma  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .110
2.5.8.1. Предупреждения pragma warning . . . . . . . . . . . . . . . . . . . . . . . . .111
Глава 3. Основные понятия . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  113
3.1. Запуск приложения  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .113
3.2. Завершение работы приложения  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .114
3.3. Объявления. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .115
3.4. Элементы пространств имен и типов . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .118
3.4.1. Элементы пространств имен  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .119
3.4.2. Элементы структур. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .119
3.4.3. Элементы перечислений. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .120
3.4.4. Элементы классов  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .120
3.4.5. Элементы интерфейсов  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .120
3.4.6. Элементы массивов. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .120
3.4.7. Элементы делегатов  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .120
3.5. Доступ к элементам. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .121
3.5.1. Объявление вида доступа . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .121
3.5.2. Области доступности. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .124
3.5.3. Доступ protected для элементов экземпляров  . . . . . . . . . . . . . . . . . . .127
3.5.4. Ограничения доступа. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .129
3.6. Сигнатуры и перегрузка  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .130
3.7. Области видимости . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .133
3.7.1. Скрытие имен  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .136
3.7.1.1. Скрытие в результате вложения . . . . . . . . . . . . . . . . . . . . . . . . . .137
3.7.1.2. Скрытие в результате наследования . . . . . . . . . . . . . . . . . . . . . .138
3.8. Имена пространств имен и типов  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .140
3.8.1. Полные имена . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .143
3.9. Автоматическое управление памятью  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .144
3.10. Порядок выполнения. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .149
Глава 4. Типы   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  151
4.1. Типы-значения  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .151
4.1.1. Тип System.ValueType. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .152
4.1.2. Конструкторы по умолчанию  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .153
4.1.3. Структурные типы. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .154
4.1.4. Простые типы  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .155
4.1.5. Целочисленные типы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .156
4.1.6. Типы с плавающей точкой . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .158
4.1.7. Десятичный тип  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .161
4.1.8. Булевский тип . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .162
4.1.9. Перечислимые типы. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .163
4.1.10. Обнуляемые типы. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .163
4.2. Ссылочные типы. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .164
4.2.1. Классы  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .165
4.2.2. Тип object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .166
4.2.3. Тип dynamic  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .166
4.2.4. Тип string  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .166
4.2.5. Интерфейсы  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .166
4.2.6. Массивы. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .166
4.2.7. Делегаты  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .167
4.3. Упаковка и распаковка  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .167
4.3.1. Упаковка. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .168
4.3.2. Распаковка. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .170
4.4. Сконструированные типы. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .172
4.4.1. Аргументы-типы  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .173
4.4.2. Открытые и закрытые типы. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .173
4.4.3. Ограниченные и неограниченные типы  . . . . . . . . . . . . . . . . . . . . . . . . .174
4.4.4. Соблюдение ограничений. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .174
4.5. Параметры-типы  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .175
4.6. Типы деревьев выражений . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .176
4.7. Тип dynamic. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .177
Глава 5. Переменные   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  179
5.1. Категории переменных. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .179
5.1.1. Статические переменные  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .180
5.1.2. Переменные экземпляра  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .180
5.1.2.1. Переменные экземпляра в классах  . . . . . . . . . . . . . . . . . . . . . . .180
5.1.2.2. Переменные экземпляра в структурах  . . . . . . . . . . . . . . . . . . . .181
5.1.3. Элементы массива . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .181
5.1.4. Параметры-значения. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .181
5.1.5. Параметры-ссылки  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .182
5.1.6. Выходные параметры  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .183
5.1.7. Локальные переменные  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .183
5.2. Значение по умолчанию  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .185
5.3. Явное присваивание . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .186
5.3.1. Инициализированные переменные. . . . . . . . . . . . . . . . . . . . . . . . . . . . .187
5.3.2. Неинициализированные переменные. . . . . . . . . . . . . . . . . . . . . . . . . . .187
5.3.3. Точные правила для определения явного присваивания. . . . . . . . . . .188
5.3.3.1. Общие правила для операторов. . . . . . . . . . . . . . . . . . . . . . . . . .188
5.3.3.2. Блок, операторы checked и unchecked  . . . . . . . . . . . . . . . . . . . .189
5.3.3.3. Оператор-выражение. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .189
5.3.3.4. Операторы объявления  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .189
5.3.3.5. Условный оператор. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .190
5.3.3.6. Оператор выбора  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .190
5.3.3.7. Оператор цикла while  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .190
5.3.3.8. Оператор цикла do  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .191
5.3.3.9. Оператор цикла for  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .191
5.3.3.10. Операторы перехода break, continue и goto . . . . . . . . . . . . . . .191
5.3.3.11. Оператор throw  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .191
5.3.3.12. Оператор return . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .192
5.3.3.13. Оператор try-catch  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .192
5.3.3.14. Оператор try-fnally  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .192
5.3.3.15. Оператор try-catch-finally. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .193
5.3.3.16. Оператор foreach  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .194
5.3.3.17. Оператор using  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .194
5.3.3.18. Оператор lock  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .194
5.3.3.19. Оператор yield . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .194
5.3.3.20. Общие правила для простых выражений  . . . . . . . . . . . . . . . . .195
5.3.3.21. Общие правила для выражений с вложенными 
 выражениями. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .195
5.3.3.22. Выражения вызова и выражения создания объекта . . . . . . . .195
5.3.3.23. Выражения простого присваивания  . . . . . . . . . . . . . . . . . . . . .196
5.3.3.24. &&-выражения. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .196
5.3.3.25. Выражения ||. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .197
5.3.3.26. Выражения ! . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .198
5.3.3.27. Выражения ??  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .198
5.3.3.28. Выражения ?: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .198
5.3.3.29. Анонимные функции. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .199
5.4. Ссылки на переменные. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .200
5.5. Атомарность ссылок на переменные  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .200
Глава 6. Приведение типов . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  201
6.1. Неявные приведения типов  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .202
6.1.1. Тождественные преобразования . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .202
6.1.2. Неявные приведения арифметических типов  . . . . . . . . . . . . . . . . . . . .203
6.1.3. Неявные приведения перечислений . . . . . . . . . . . . . . . . . . . . . . . . . . . .203
6.1.4. Неявные приведения обнуляемых типов  . . . . . . . . . . . . . . . . . . . . . . . .204
6.1.5. Неявные приведения литерала null . . . . . . . . . . . . . . . . . . . . . . . . . . . . .205
6.1.6. Неявные приведения ссылочных типов  . . . . . . . . . . . . . . . . . . . . . . . . .205
6.1.7. Преобразования упаковки  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .207
6.1.8. Неявные приведения типа dynamic . . . . . . . . . . . . . . . . . . . . . . . . . . . . .207
6.1.9. Неявные приведения константных выражений  . . . . . . . . . . . . . . . . . . .208
6.1.10. Неявные приведения параметров-типов . . . . . . . . . . . . . . . . . . . . . . .209
6.1.11. Определенные пользователем неявные приведения типов  . . . . . . .210
6.1.12. Приведения анонимной функции и группы методов  . . . . . . . . . . . . .210
6.2. Явные приведения типов  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .210
6.2.1. Явные приведения арифметических типов  . . . . . . . . . . . . . . . . . . . . . .210
6.2.2. Явные приведения перечислений  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .213
6.2.3. Явные приведения обнуляемых типов  . . . . . . . . . . . . . . . . . . . . . . . . . .213
6.2.4. Явные приведения ссылочных типов  . . . . . . . . . . . . . . . . . . . . . . . . . . .214
6.2.5. Преобразование распаковки  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .215
6.2.6. Явные приведения типа dynamic  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .216
6.2.7. Явное приведение параметров-типов  . . . . . . . . . . . . . . . . . . . . . . . . . .217
6.2.8. Определенные пользователем явные приведения типов  . . . . . . . . . .218
6.3. Стандартные приведения типов  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .219
6.3.1. Стандартные неявные преобразования . . . . . . . . . . . . . . . . . . . . . . . . .219
6.3.2. Стандартные явные преобразования  . . . . . . . . . . . . . . . . . . . . . . . . . . .219
6.4. Приведения типов, определенные пользователем  . . . . . . . . . . . . . . . . . . . . .220
6.4.1. Допустимые приведения типов, определенные пользователем  . . . .220
6.4.2. Повышающие (lifted) приведения типов . . . . . . . . . . . . . . . . . . . . . . . . .220
6.4.3. Выполнение определенных пользователем приведений  . . . . . . . . . .221
6.4.4. Определенные пользователем неявные приведения типов  . . . . . . . .222
6.4.5. Определенные пользователем явные приведения типов  . . . . . . . . . .223
6.5. Приведения анонимных функций  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .225
6.5.1. Выполнение приведений анонимных функций к типам делегатов. . .227
6.5.2. Выполнение приведений анонимных функций 
к деревьям выражений  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .228
6.5.3. Пример реализации. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .228
6.6. Приведения групп методов  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .232
Глава 7. Выражения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  236
7.1. Классификация выражений  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .236
7.1.1. Значение выражений . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .238
7.2. Статическое и динамическое связывание. . . . . . . . . . . . . . . . . . . . . . . . . . . . .239
7.2.1. Время связывания  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .240
7.2.2. Динамическое связывание . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .240
7.2.3. Типы составных частей выражений . . . . . . . . . . . . . . . . . . . . . . . . . . . . .242
7.3. Операции  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .243
7.3.1. Приоритет и ассоциативность операций  . . . . . . . . . . . . . . . . . . . . . . . .243
7.3.2. Перегрузка операций  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .245
7.3.3. Разрешение перегрузки унарных операций  . . . . . . . . . . . . . . . . . . . . .247
7.3.4. Разрешение перегрузки бинарной операции  . . . . . . . . . . . . . . . . . . . .247
7.3.5. Набор определенных пользователем операций . . . . . . . . . . . . . . . . . .248
7.3.6. Числовое расширение. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .248
7.3.6.1. Унарное числовое расширение  . . . . . . . . . . . . . . . . . . . . . . . . . .249
7.3.6.2. Бинарное числовое расширение  . . . . . . . . . . . . . . . . . . . . . . . . .249
7.3.7. Расширенные операции  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .250
7.4. Поиск элемента  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .251
7.4.1. Базовые типы  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .254
7.5. Функциональные элементы  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .254
7.5.1. Списки аргументов. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .257
7.5.1.1. Соответствующие параметры. . . . . . . . . . . . . . . . . . . . . . . . . . . .258
7.5.1.2. Вычисление списка аргументов во время выполнения 
программы  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .260
7.5.2. Выведение типов  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .262
7.5.2.1. Первая фаза. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .264
7.5.2.2. Вторая фаза . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .265
7.5.2.3. Входные типы  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .265
7.5.2.4. Выходные типы  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .265
7.5.2.5. Зависимость  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .265
7.5.2.6. Выведение выходного типа . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .266
7.5.2.7. Явное выведение типа параметра  . . . . . . . . . . . . . . . . . . . . . . . .266
7.5.2.8. Точное выведение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .266
7.5.2.9. Выведение нижней границы  . . . . . . . . . . . . . . . . . . . . . . . . . . . . .267
7.5.2.10. Выведение верхней границы  . . . . . . . . . . . . . . . . . . . . . . . . . . .268
7.5.2.11. Фиксация  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .269
7.5.2.12. Выведенный тип возвращаемого значения  . . . . . . . . . . . . . . .270
7.5.2.13. Выведение типа для преобразования группы методов  . . . . .271
7.5.2.14. Нахождение наилучшего общего типа для набора 
 выражений  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .272
7.5.3. Разрешение перегрузки  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .272
7.5.3.1. Подходящий функциональный элемент  . . . . . . . . . . . . . . . . . . .273
7.5.3.2. Лучший функциональный элемент . . . . . . . . . . . . . . . . . . . . . . . .274
7.5.3.3. Лучшее приведение из выражения  . . . . . . . . . . . . . . . . . . . . . . .276
7.5.3.4. Лучшее приведение из типа  . . . . . . . . . . . . . . . . . . . . . . . . . . . . .276
7.5.3.5. Лучший целевой объект приведения . . . . . . . . . . . . . . . . . . . . . .276
7.5.3.6. Перегрузка в обобщенных классах  . . . . . . . . . . . . . . . . . . . . . . .277
7.5.4. Проверка динамического разрешения перегрузки во время 
 компиляции. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .277
7.5.5. Вызов функционального элемента  . . . . . . . . . . . . . . . . . . . . . . . . . . . . .278
7.5.5.1. Вызовы для упакованных экземпляров . . . . . . . . . . . . . . . . . . . .280
7.6. Первичные выражения  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .280
7.6.1. Литералы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .281
7.6.2. Простые имена  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .281
7.6.2.1. Инвариантное значение в блоках . . . . . . . . . . . . . . . . . . . . . . . . .283
7.6.3. Выражения в скобках . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .285
7.6.4. Доступ к элементу  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .285
7.6.4.1. Идентичные простые имена и имена типов  . . . . . . . . . . . . . . . .288
7.6.4.2. Грамматическая неоднозначность. . . . . . . . . . . . . . . . . . . . . . . .288
7.6.5. Выражения вызова. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .289
7.6.5.1. Вызов метода  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .290
7.6.5.2. Вызов метода расширения  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .294
7.6.5.3. Вызов делегата  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .299
7.6.6. Доступ к элементу массива  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .299
7.6.6.1. Доступ к массиву. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .300
7.6.6.2. Доступ к индексатору . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .301
7.6.7. this-доступ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .302
7.6.8. Base-доступ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .303
7.6.9. Постфиксные инкрементные и декрементные операции  . . . . . . . . . .304
7.6.10. Операция new . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .306
7.6.10.1. Выражения создания объекта. . . . . . . . . . . . . . . . . . . . . . . . . . .306
7.6.10.2. Инициализаторы объектов  . . . . . . . . . . . . . . . . . . . . . . . . . . . . .308
7.6.10.3. Инициализаторы коллекций  . . . . . . . . . . . . . . . . . . . . . . . . . . . .311
7.6.10.4. Выражения создания массива  . . . . . . . . . . . . . . . . . . . . . . . . . .313
7.6.10.5. Выражения создания делегата. . . . . . . . . . . . . . . . . . . . . . . . . .315
7.6.10.6. Выражение создания анонимного объекта  . . . . . . . . . . . . . . .317
7.6.11. Операция typeof  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .319
7.6.12. Операции checked и unchecked . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .322
7.6.13. Выражения значений по умолчанию . . . . . . . . . . . . . . . . . . . . . . . . . . .325
7.6.14. Выражения анонимных методов  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .325
7.7. Унарные операции. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .325
7.7.1. Унарная операция плюс  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .326
7.7.2. Унарная операция минус. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .326
7.7.3. Логическая операция отрицания . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .327
7.7.4. Операция поразрядного дополнения  . . . . . . . . . . . . . . . . . . . . . . . . . . .327
7.7.5. Префиксные инкрементные и декрементные операции  . . . . . . . . . . .328
7.7.6. Выражения приведения  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .329
7.8. Арифметические операции  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .331
7.8.1. Операция умножения. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .331
7.8.2. Операция деления  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .333
7.8.3. Операция взятия остатка от деления  . . . . . . . . . . . . . . . . . . . . . . . . . . .334
7.8.4. Операция сложения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .336
7.8.5. Операция вычитания  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .339
7.9. Операции сдвига  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .341
7.10. Операции отношения и операции проверки типа  . . . . . . . . . . . . . . . . . . . . .342
7.10.1. Операции сравнения для целочисленных типов . . . . . . . . . . . . . . . . .343
7.10.2. Операции сравнения для типов с плавающей точкой  . . . . . . . . . . . .344
7.10.3. Операции сравнения для десятичного типа  . . . . . . . . . . . . . . . . . . . .346
7.10.4. Операции равенства для булевского типа . . . . . . . . . . . . . . . . . . . . . .346
7.10.5. Операции сравнения для перечислений  . . . . . . . . . . . . . . . . . . . . . . .346
7.10.6. Операции равенства для ссылочных типов  . . . . . . . . . . . . . . . . . . . . .347
7.10.7. Операции равенства для строкового типа . . . . . . . . . . . . . . . . . . . . . .349
7.10.8. Операции равенства для типов делегатов . . . . . . . . . . . . . . . . . . . . . .349
7.10.9. Операции равенства и константа null  . . . . . . . . . . . . . . . . . . . . . . . . . .350
7.10.10. Операция is . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .350
7.10.11. Операция as  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .351
7.11. Логические операции  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .353
7.11.1. Логические операции для целочисленных типов  . . . . . . . . . . . . . . . .353
7.11.2. Логические операции для перечислений. . . . . . . . . . . . . . . . . . . . . . .354
7.11.3. Булевские логические операции . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .354
7.11.4. Обнуляемые булевские логические операции  . . . . . . . . . . . . . . . . . .354
7.12. Условные логические операции  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .355
7.12.1. Булевские условные логические операции  . . . . . . . . . . . . . . . . . . . . .356
7.12.2. Определенные пользователем условные логические операции  . . .356
7.13. Операция объединения с нулем  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .357
7.14. Условная операция  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .359
7.15. Выражения анонимных функций . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .361
7.15.1. Сигнатуры анонимной функции . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .363
7.15.2. Тело анонимной функции  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .364
7.15.3. Разрешение перегрузки  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .365
7.15.4. Анонимные функции и динамическое связывание . . . . . . . . . . . . . . .366
7.15.5. Внешние переменные  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .366
7.15.5.1. Захваченные внешние переменные. . . . . . . . . . . . . . . . . . . . . .366
7.15.5.2. Инстанцирование локальных переменных  . . . . . . . . . . . . . . . .367
7.15.6. Вычисление выражений анонимных функций . . . . . . . . . . . . . . . . . . .370
7.16. Выражения запроса  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .370
7.16.1. Неоднозначность в выражениях запроса . . . . . . . . . . . . . . . . . . . . . . .372
7.16.2. Преобразование выражений запроса. . . . . . . . . . . . . . . . . . . . . . . . . .373
7.16.2.1. Конструкции select и GroupBy с продолжениями. . . . . . . . . . .374
7.16.2.2. Явно определенные типы переменных диапазона  . . . . . . . . .375
7.16.2.3. Вырожденные выражения запросов  . . . . . . . . . . . . . . . . . . . . .376
7.16.2.4. Конструкции from, let, where, join и orderby. . . . . . . . . . . . . . . .376
7.16.2.5. Конструкции select  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .380
7.16.2.6. Конструкция GroupBy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .380
7.16.2.7. Прозрачные идентификаторы. . . . . . . . . . . . . . . . . . . . . . . . . . .380
7.16.3. Паттерн выражения запроса  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .382
7.17. Операции присваивания  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .384
7.17.1. Простое присваивание  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .385
7.17.2. Сложное присваиваивание. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .388
7.17.3. Присваивание событий . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .389
7.18. Выражения  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .390
7.19. Константные выражения  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .390
7.20. Булевские выражения. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .392
Глава 8. Операторы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  393
8.1. Конечные точки и достижимость. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .393
8.2. Блоки  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .396
8.2.1. Списки операторов  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .396
8.3. Пустой оператор  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .397
8.4. Помеченные операторы  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .399
8.5. Операторы объявления. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .400
8.5.1. Объявление локальных переменных . . . . . . . . . . . . . . . . . . . . . . . . . . . .400
8.5.2. Объявление локальных констант . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .403
8.6. Операторы-выражения. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .404
8.7. Операторы выбора  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .405
8.7.1. Оператор if. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .405
8.7.2. Оператор switch  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .406
8.8. Операторы цикла . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .411.......
Быстрый фильтр: Язык | | программирования | | C# | | Классика | | Computers | | Science | | 4 | е | изд | | | Хейлсберг |

Доставка Язык программирования C#. Классика Computers Science. 4-е изд. Хейлсберг почтой наложным платежом.

 
     



    Купить книгу в разделе Книги компьютерные - Книги C, C++,С#  
 
Книга Принципы, паттерны и методики гибкой разработки на языке С#. Мартин
Купить книгу почтой в интернет магазине Книга Принципы, паттерны и методики гибкой разработки на языке С#. Мартин Цель данной книги Принципы, паттерны и методики гибкой разработки на языке С#. Мартин - собрать воедино все методики гибкой разработки и показать их работоспособность.
Книга Программирование в С++ Builder 6 и 2006. Архангельский (+CD)
Купить Книга Программирование в С++ Builder 6 и 2006. Архангельский (+CD) Книга содержит методические и справочные материалы по системам визуального объектно-ориентированного программирования C++Builder 6 и 2006, а также по предшествующим версиям C++Builder. Дается методика построения прикладных программ, реализующих текстовые и графические редакторы, мультипликацию и мультимедиа, работу с базами данных, создание отчетов, приложений для Интернета, распределенных приложений, клиентов и серверов.
 
     
 
   
СУПЕРКНИГА © 2003-2011
Skylogic - Заказать продвижение сайтов в Одессе
Книги купить почтой - доставка книги почтой по Украине.
Интернет магазин книги | Новые книги | Оплата книги | Доставка книги | Контакты | Помощь