Сообщения с тегом ‘System’
Преобразования строкового типа
Написано admin в 20 Июнь 2008 – 20:52 -Преобразования строкового типа
Важным классом преобразований являются преобразования в строковый тип и наоборот. Преобразования в строковый тип всегда определены, поскольку, напомню, все типы являются потомками базового класса Object, а, следовательно, обладают методом ToString(). Для встроенных типов определена подходящая реализация этого метода. В частности, для всех подтипов арифметического типа метод ToString() возвращает в подходящей форме строку, задающую соответствующее значение арифметического типа. Заметьте, метод ToString можно вызывать явно, но, если явный вызов не указан, то он будет вызываться неявно, всякий раз, когда по контексту требуется преобразование к строковому типу. Вот соответствующий пример: Read more »
Tags: Console, Convert, FCL, FromStringTest, Object, Read, summary, System, ToDouble, ToString, ToUInt, WhoIsWho, WriteLine
Находится в Учебник | No Comments »
Семантика присваивания
Написано admin в 20 Июнь 2008 – 20:49 -Семантика присваивания
Рассмотрим присваивание:
x = e.
Чтобы присваивание было допустимым, типы переменной x и выражения e должны быть согласованными. Пусть сущность x согласно объявлению принадлежит классу T. Будем говорить, что тип T основан на классе T и является базовым типом x, так что базовый тип определяется классом объявления. Пусть теперь в рассматриваемом нами присваивании выражение e связано с объектом типа T1.
Определение: тип T1 согласован по присваиванию с базовым типом T переменной x, если класс T1 является потомком класса T.
Присваивание допустимо, если и только если имеет место согласование типов. Так как все классы в языке C# — встроенные и определенные пользователем — по определению являются потомками класса Object, то отсюда и следует наш частный случай — переменным класса Object можно присваивать выражения любого типа. Read more »
Tags: byte, Child, Class, namespace, Object, Parent, string, summary, System, Testing, uint, WhoIsWho
Находится в Учебник | No Comments »
Система типов
Написано admin в 20 Июнь 2008 – 20:47 -Система типов
Давайте рассмотрим, как устроена система типов в языке C#, но вначале для сравнения приведу классификацию типов в стандарте языка C++.
Стандарт языка C++ включает следующий набор фундаментальных типов.
- Логический тип (bool).
- Символьный тип (char).
- Целые типы. Целые типы могут быть одного из трех размеров — short, int, long, сопровождаемые описателем signed или unsigned, который указывает, как интерпретируется значение, — со знаком или без оного.
- Типы с плавающей точкой. Эти типы также могут быть одного из трех размеров — float, double, long double.
Кроме того, в языке есть
- Тип void, используемый для указания на отсутствие информации.
Язык позволяет конструировать типы.
- Указатели (например, int* — типизированный указатель на переменную типа int).
- Ссылки (например, double& — типизированная ссылка на переменную типа double).
- Массивы (например, char[] — массив элементов типа char).
Язык позволяет конструировать пользовательские типы
- Перечислимые типы (enum) для представления значений из конкретного множества.
- Структуры (struct).
- Классы. Read more »
Tags: Boolean, Eiffel, enum, Framework, NET, pointer, Reference, SByte, struct, System, void
Находится в Учебник | No Comments »
