Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Язык C# и основы платформы .NET.docx
Скачиваний:
36
Добавлен:
11.05.2015
Размер:
178.68 Кб
Скачать

4. Идентификаторы, ключевые слова и литералы

Идентификатор– это пользовательское имя для переменной, константы, метода или типа. В C# идентификатор – это произвольная последовательность букв, цифр и символов подчёркивания, начинающаяся с буквы, символа подчёркивания, либо символа@. При записи идентификатора допустимо использовать четыре шестнадцатеричных цифры кода UTF-16 с префиксом\u.

Идентификатор должен быть уникальным внутри области видимости. Он не может совпадать с ключевым словом языка, за исключением того случая, когда используется специальный префикс @(не являющийся частью идентификатора). Примеры допустимых идентификаторов:Temp,_variable,_(символ подчёркивания),@class(используется префикс@, так какclass– ключевое слово),cl\u0061ss(применяется код UTF-16 для символаa, этот идентификатор совпадает с идентификатором@class).

Ключевые слова– это предварительно определённые зарезервированные слова, имеющие специальное значение для компилятора. Ключевые слова нельзя использовать в качестве идентификаторов. Ниже приведён список всех ключевых слов языкаC#.

abstract as base bool break

byte case catch char checked

class const continue decimal default

delegate do double else enum

event explicit extern false finally

fixed float for foreach goto

if implicit in int interface

internal is lock long namespace

new null object operator out

override params private protected public

readonly ref return sbyte sealed

short sizeof stackalloc static string

struct switch this throw true

try typeof uint ulong unchecked

unsafe ushort using virtual void

volatile while

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

add alias ascending assembly async

await by descending dynamic equals

field from get global group

into join let method module

on orderby param partial property

remove select set type typevar

value var where yield

Литерал– это последовательность символов, которая может интерпретироваться как экземпляр определённого типа1. Рассмотрим правила записи некоторых литералов. Для ссылочных типов определён литералnull, который указывает на неинициализированную ссылку. В языке C# два булевых литерала:trueиfalse. Целочисленные литералы могут быть записаны в десятичной или шестнадцатеричной форме. Признаком шестнадцатеричного литерала является префикс0x(или0X). Конкретный тип целочисленного литерала определяется следующим образом:

– Если литерал не имеет суффикса, то его тип – это первый из типов int,uint,long,ulong, который способен вместить значение литерала.

– Если литерал имеет суффикс Uилиu, его тип – это первый из типовuint,ulong, который способен вместить значение литерала.

– Если литерал имеет суффикс Lилиl, то его тип – это первый из типовlong,ulong, который способен вместить значение литерала2.

– Если литерал имеет суффикс UL,Ul,uL,ul,LU,Lu,lU,lu, его тип –ulong.

Если в числе с десятичной точкой не указан суффикс, то подразумевается тип double. Суффиксf(илиF) используется для указания на типfloat, суффиксd(илиD) используется для явного указания на типdouble, суффиксm(илиM) определяет литерал типаdecimal. Число с плавающей точкой может быть записано в научном формате:3.5E-6,-7e10,.6E+7.

Символьный литерал записывают в одинарных кавычках. Обычно это единичный символ (например, 'a'). Допустимо указать четыре шестнадцатеричных цифры кода UTF-16 с префиксом\u('\u005C'– это символ'\'). Можно использовать префикс\xине болеечетырёх шестнадцатеричных цифр кода UTF-16 ('\x5c'– это тоже символ'\'). Кроме этого, для представления некоторых специальных символов используются следующие пары:

\'– одинарная кавычка\f– новая страница

\"– двойная кавычка\n– новая строка

\\– обратная косая черта\r– возврат каретки

\0– символ с кодом ноль\t– горизонтальная табуляция

\a– звуковой сигнал\v– вертикальная табуляция

\b– забой (backspace)

Для строковых литералов в языке C# существуют две формы. Обычно строковый литерал записывается как ряд символов в двойных кавычках. Среди символов строки могут быть и управляющие последовательности: "This is a \t tabbed string".Дословная форма(verbatimform) строкового литерала – это запись строки в кавычках с использованием префикса@:@"There is \t no tab". В этом случае управляющие последовательности воспринимаются как обычные пары символов. Дословная форма может занимать несколько строк.