Книга: ЯЗЫК ПРОГРАММИРОВАНИЯ С# 2005 И ПЛАТФОРМА .NET 2.0. 3-е издание

Ссылки на константы

Ссылки на константы

Если нужно сослаться на константу, определенную внешним типом, вы должны добавить префикс имени типа (например, ConstData.Truth), поскольку поля-константы являются неявно статическими. Однако при ссылке на константу, определенную в рамках текущего типа (или в рамках текущего члена), указывать префикс имени типа не требуется. Чтобы пояснить это, рассмотрим следующий класс.

class Program {
 public const string BestNhlTeam = "Wild";
 static void Main(string[] args) {
  // Печать значений констант, определенных другими типами.
  Console.WriteLine("Константа Nba: {0}", ConstData.BestNbaTeam);
  Console.WriteLine("Константа SimplePI: {0}", ConstData.SimplePI);
  Console.WriteLine("Константа Truth: {0}", ConstData.Truth);
  Console.WriteLine("Константа Falsity: {0}", ConstData.Falsity);
  // Печать значений констант члена.
  Console.WriteLine("Константа Nhl: {0}", BestNhlTeam);
  // Печать значений констант локального уровня.
  const int LocalFixedValue = 4;
  Console.WriteLine("Константа Local: {0}", LocalFixedValue);
  Console.ReadLine();
 }
}

Обратите внимание на то, что для доступа к константам класса ConstData необходимо указать имя типа. Однако класс Program имеет прямой доступ к константе BestNhlTeam, поскольку она была определена в пределах собственной области видимости класса. Константа LocalFixedValue, определенная в Main(), конечно же, должна быть доступной только из метода Main().

Исходный код. Проект Constants размещен в подкаталоге, соответствующем главе 3.

Оглавление книги

Оглавление статьи/книги

Генерация: 0.095. Запросов К БД/Cache: 0 / 0
поделиться
Вверх Вниз