Читать «Полный справочник по С++» онлайн - страница 450
Герберт Шилдт
лексемы.
После выполнения этих действий анализатор сможет вычислять строковые выражения, например:
а = "один" b = "два" с= а+Ь
Результат, записанный в переменной с, должен представлять собой конкатенацию строк а и Ь, т.е. быть строкой “одиндва”.
Вспомним об еще одном полезном применении синтаксического анализатора: создании простого всплывающего калькулятора, вычисляющего выражения, введенные пользователем, и выводящего результат на экран. Этот калькулятор может украсить любое коммерческое приложение. Если вы программируете в среде Windows, это будет особенно просто.
Полный справочник по
Приложение А
Расширение языка C++ для платформы .NET
Технология .NET (.NET Framework), разработанная компанией Microsoft, определяет среду разработки и выполнения распределенных приложений, использующих компоненты. Она позволяет объединять разные языки программирования, обеспечивает безопасность и машинонезависимость программ, а также создает общую платформу программирования под управлением системы Windows. Несмотря на то что технология .NET появилась лишь недавно, в ближайшем будущем она, без сомнения, станет основной средой программирования на языке C++.
Технология .NET обеспечивает управляемую среду выполнения программ. Программы, предназначенные для среды .NET, не компилируются в исполняемый объектный код. Вместо этого они транслируются в промежуточный язык Microsoft Intermediate Language (MSIL). а затем выполняются под управлением среды Common Language Runtime. Управляемое выполнение является механизмом, поддерживающим основные преимущества, предлагаемые технологией .NET.
Для того чтобы воспользоваться преимуществами технологии .NET, в программе на языке C++ необходимо применять нестандартные ключевые слова и директивы препроцессора, введенные компанией Microsoft. Следует иметь в виду, что эти расширения не являются частью стандарта языка C++. Таким образом, код. использующий эти ключевые слова и директивы, не является машинонезависимым.
Описание технологии .NET и способов ее применения выходит далеко за рамки нашей книги. (Эта тема для отдельной и довольно толстой книги!) Однако мы сделаем краткий обзор расширений языка C++, связанных с этой технологией. При этом мы будем предполагать, что читатели уже знакомы с основами технологии .NET.
ополнительные ключевые слова
Для поддержки технологии .NET компания Microsoft ввела в язык C++ новые ключевые слова.
__abstract __box __delegate
__event __finally __gc
__identifier __interface __nogc
__pin __property __sealed
__try_cast __typedef __value
Опишем каждое из эти слов.
Ключевое слово__abstract
Используется в сочетании с ключевым словом__gc для указания абстрактного
управляемого класса. Класс, имеющий атрибут__abstract, не имеет объектов. Кро
ме того, такой класс не обязан содержать чисто виртуальную функцию.
Ключевое слово __Ьох
Погружает значение в объект. Это позволяет использовать значения вместо объектов класса System::Object, являющегося базовым классом для всех объектов, создаваемых по технологии .NET.