Главная » Просмотр файлов » Г. Шилдт - С# 3.0 Полное руководство. 2010

Г. Шилдт - С# 3.0 Полное руководство. 2010 (1160798), страница 99

Файл №1160798 Г. Шилдт - С# 3.0 Полное руководство. 2010 (Г. Шилдт - С# 3.0 Полное руководство. 2010) 99 страницаГ. Шилдт - С# 3.0 Полное руководство. 2010 (1160798) страница 992019-09-19СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 99)

Это не пробная экспериментальная версия. Присутствует во всех версиях. 514 Часть (. Язык С№ В данном примере идентификатор тн1АЬ не определен, и поэтому часть №е1зе второй условной последовательности кода не компилируется. Обратите внимание на то, что директива №е1эе обозначает конец блока директивы №г№ и в то же время — начало блока самой директивы №е1эе. Это необходимо потому что с любой директивой №11 может быть связана только одна директива №епс)11.

Более того, с любой директивой №11 может быть связана только одна директива №е1зе. Обозначение №е111 означает "иначе если", а сама директива №е111 определяет последовательность условных операций 1Г-е1зе-1г для многовариантной компиляции. После директивы №е111 указывается идентификаторное выражение. Если это выражение истинно, то компилируется следующий далее кодовый блок, а остальные выражения директивы №е111 не проверяются.

В противном случае проверяется следующий по пор)щку блок. Если же ни одну из директив №е111 не удастся выполнитгь то при наличии директивы №е1эе выполняется последовательность кода, связанная с этой директивой, а иначе не компилируется ни один из кодовых блоков директивы №11. Ниже приведена общая форма директивы №е1г1. №гт идентнфнкаторное аыраменне последовательность операторов №е111 идентнфикаторное аырамение последовательность операторов №е111 идентифнкаторное аыраменне последовательность операторов // . №епб11 В приведенном ниже примере демонстрируется применение директивы №е111.

// Продемонстрировать применение директивы №е111. №бетгпе КЕЬЕАЗЕ пэ1по Эуэсеы; с1ааэ Теяе ( згасгс чо1с( Маги() ( №11 ехрен1ментА( Сопэо1е.нггкеЬ1пе("Компилируется для экспериментальной версии.")) №е111 КЕЬЕАЭЕ Сопэо1е.нгзсеьгпе("Компилируется для окончательной версии.")г №е1яе Сопэо1е.нг1седзпе("Компилируется для внутреннего тестирования."); №епб1Г №11 тктА( ьа (НЕ(ЕАЗЕ Сопао1е.нг1кепхпе("Пробная версия."); №епб11 Сопэо1е.нггсеЬ1пе("Присутствует во всех версиях."); ) Глава 16. Пространства имен, препроаессор и сборки 515 Этот код выдает следующий результат: Компилируетая для окончательной версии.

Приаутствует во ваех версиях. Директива $ппйе Е С помощью директивы фппбеб удаляется определенный ранее идентификатор. Это, по существу, означает, что он становится "неопределенным". Ниже приведена обшая форма директивы Мипбеб. Еапбес идентификатор Рассмотрим следующий пример кода: Ебе11пе ЗНАЬЬ Е11 БИАЬЬ // ... Еппбет ЯМАЬЬ // теперь идентификатор ЯМАЬЬ не определен. После директивы фппбеб идентификатор ЯМАЬЬ уже оказывается неопределенным. Директива фппбеб применяется главным образом для локализации идентификаторов только в тех фрагментах кода, в которых они действительно требуются.

Директива $еггог Директива Фег саг вынуждает компилятор прервать компиляцию. Она служит в основном для отладки. Ниже приведена общая форма директивы фегда г. ееггог сообщение об ошибке Когда в коде встречается директива феггаг, выводится сообщение об ошибке. Например, когда компилятору встречается строка кода Ееггог Это тестовая ошибка! компиляция прерывается и выводится сообшение "это тестовая ошибка!". Директива $магпд.пд Директива фнагп1па действует аналогично директиве феггаг, за исключением того, что она выводит предупреждение, а не ошибку.

Следовательно, компиляция не прерывается. Ниже приведена общая форма директивы фнагп1па. Енагп1пр лредулреклашщее сообщение Директива $1хпе Директива ф11пе задает номер строки и имя файла, содержащего эту директиву. Номер строки и имя файла используются при выводе ошибок или предупреждений во время компиляции. Киже приведена обшая форма директивы Ф11пе. Е11пе номер "имя файла" 516 Часть !. Язьж С№ Имеются еще два варианта директивы №11пе.

В первом из них она указывается с ключевым словом с!ейап11, обозначающим возврат нумерации строк в исходное состояние, как в приведенном ниже примере. №11пе сетад11 А во втором варианте директива №11пе указывается с ключевым словом п1г!г!еп. При пошаговой отладке программы строки кода, находящиеся между директивой №1гпе Ь1гЫеп и следующей директивой №11пе без ключевого слова и 1гЫеп, пропускаются отладчиком. Директивы $гедхоп и $епйгед~оп С помощью директив №гед№сп и №епг!гед1оп определяется область, которая разворачивается или сворачивается при структурировании исходного кода в интегрированной среде разработки У!зца! 81пг!!о. Ниже приведена общая форма этих директив.

№гед1оп текст // последовательность кода №епг!гед1оп текст где текст обозначает необязательную символьную строку. Директива $ртаува С помощью директивы №ргадма инструкции задаются компилятору в виде опций. Ниже приведена общая форма этой директивы. №ргадиа опция где опция обозначает инструкцию, передаваемую компилятору.

В версии Сй 3.0 предусмотрены две опции для директивы №ргадва. Первая из них, иагпьпд, служит для разрешения или запрета отдельных предупреждений со стороны компилятора. Она принимает две формы: №ргадиа нагпгпд г!1эаъ1е предупреядения №ргадиа нагпгпд геэсоге предупрендения где предупреждения обозначает разделяемый запятыми список номеров предупреждений. Для отмены предупреждения используется опция с!1эаЬ1е,адля его разрешения— опция геэсоге. Например, в приведенной ниже директиве №ргадиа запрещается выдача предупреждения №168, уведомляющего о том, что переменная объявлена, но не используется. №ргадиа иагпгпд с1аавте 168 Второй для директивы №ргадва является опция спескэпль Она служит для формирования контрольной суммы в проектах АКР!чЕТ.

Ниже приведена ее общая форма. №ргадтпа пьесками "имя файла" "! оо1п!" "контрольная сумма" где нмя файла обозначает конкретное имя файла; сг/го — глобально уникальный идентификатор, с которым связано имя файла; контрольная сумма — шестнадцатеричное число, представляющее контрольную сумму. У этой контрольной суммы должно быть четное число цифр. Глава 16. Пространства имен, препроцессор и сборки 617 Сборки и модификатор доступа хп~ехпа1 Сборка является неотъемлемой частью программирования на С№. Она представляет собой один или несколько файлов, содержаших все необходимые сведения о развертывании программы и ее версии. Сборки составляют основу среды .НЕТ.

Они предоставляют механизмы для надежного взаимодействия компонентов, межъязыковой возможности взаимодействия и управления версиями. Кроме того, сборки определяют область действия программного кода. Сборка состоит из четырех разделов. Первый раздел представляет собой декларацию сборки. Декларация содержит сведения о самой сборке. К этой информации относится, в частности, имя сборки, номер ее версии, сведения о соответствии типов и параметры культурного характера. Второй раздел сборки содержит метаданные типов, т.е. сведения о типах данных, используемых в программе. Среди прочих преимуществ метаданные типов способствуют межъязыковой возможности взаимодействия.

Третий раздел сборки содержит программный код в формате МБП. (М!сгозобг 1псегшед!асе Еапцпаце — промежуточный язык корпорации М1сгозобг). И четвертый раздел сборки содержит ресурсы, используемые программой. Правда, при программировании на С№ сборки получаются автоматически, требуя от программирующего лишь минимальных усилий. Дело в том, что исполняемый файл, создаваемый во время компиляции программы на С№, на самом деле представляет собой сборку, содержащую исполняемый код этой программы, а также другие виды информации.

Таким образом, когда компилируется программа на С№, сборка получается автоматически. У сборок имеется много других особенностей, и с ними связано немало актуальных вопросов программирования, но, к сожалению, их обсуждение выходит за рамки этой книги. Ведь сборки являются неотъемлемой частью процесса разработки программного обеспечения в среде .НЕТ, но формально они не относятся к средствам языка С№. Тем не менее в С№ имеется одно средство, непосредственно связанное со сборкой.

Это модификатор доступа 1пгегпа1, рассматриваемый в следующем разделе. Модификатор доступа хп~егпа1 Помимо модификаторов доступа рпь11с, рг1уаге н ргогесгеф использовавшихся в представленных ранее примерах программ, в С№ предусмотрен также модификатор доступа 1псегпа1. этот модификатор определяет доступность члена во всех файлах сборки и его недоступность за пределами сборки. Проще говоря, о члене, обозначенном как 1пгегпа1, известно только в самой программе, но не за ее пределами. Модификатор доступа 1пгегпа1 особенно полезен для создания программных компонентов.

Модификатор доступа 1псегпа1 можно применять к классам и их членам, а также к структурам и членам структур. Кроме того, этот модификатор разрешается использовать в объявлениях интерфейсов и перечислений. из модификаторов ргогесгег1 и йпсегпа1 можно составить спаренный модификатор доступа ргосесгео упгегпа1. Уровень доступа ргосесгеб йпгегпа1 может быть задан только для членов класса. Член, объявленный как ргогесгео йпгегпа1, доступен лишь в пределах собственной сборки или для производных типов. Ниже приведен пример применения модификатора доступа 1псегпа1.

О Использовать модификатор доступа ьпсегпа1. извод Яузсез; 51В Часть (. Язык С№ с1асв 1пкегпа1тевк ( гпгегпа1 1пг хт ) с1авв гпсегпа1пеио ( всасгс чо1о Магд() ( тпкегпа1тевк оЬ = пен гпкегпа1тевк() оЬ.х = 10) // доступно, ибо находится в тои же файле Сопво1е.ыг1кев1пе("Значение оЬ.х: " + оЬ.х)т В классе 1псегпа1теас поле х объявляется как 1псегпа1. Это означает, что оно доступно в самой программе, но, как показывает код класса 1псегпа10екпо, недоступно за пределами программы. ГЛАВА Динамическая идентификация типов, рефлексия и атрибуты этой главе рассматриваются три эффективных средства; динамическая идентифика- В ция типов, рефлексия и атрибуты.

Характеристики

Тип файла
DJVU-файл
Размер
6,78 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Г. Шилдт - С# 3.0 Полное руководство
C_sharp_3TCR_code
Apndx.lst
Chap2.lst
Chap3.lst
Chap4.lst
Chap5.lst
Chap6.lst
Chap7.lst
Chap8.lst
Chap9.lst
Chap10.lst
Chap11.lst
Chap12.lst
Chap13.lst
Chap14.lst
Chap15.lst
Chap16.lst
Chap17.lst
Chap18.lst
Chap19.lst
Chap20.lst
Chap21.lst
Chap22.lst
Chap23.lst
Chap24.lst
Chap25.lst
Chap26.lst
Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6472
Авторов
на СтудИзбе
304
Средний доход
с одного платного файла
Обучение Подробнее