Что такое Microsoft.NET?


Программирование на управляемом C++


Глава 3 Программирование на управляемом C++
Глава 3. Программирование на управляемом C++В каждой новой версии Visual C++ компания Microsoft расширяет возможности языка во многих направлениях. Visual C++.NET не является исключением, поддержи...
Программа Hotel (Гостиница)
Программа Hotel (Гостиница)Теперь представим первую версию программы управления системой бронирования Гостиничных номеров, которую мы будем использовать и расширять в следующих главах. Обратите...
Index11
Отображение C++ на спецификацию общего (универсального) языка (CLS) и .NET FrameworkC++ — мощный язык программирования, предоставляющий широкий выбор примитивных типов и позволяющий расширя...
Типы данных C++ и общеязыковая среда выполнения CLR
Типы данных C++ и общеязыковая среда выполнения CLRМногие типы данных C++ соответствуют типам данных промежуточного языка IL .NET, определенным спецификацией общего (универсального) языка CLS (Com...
Типы данных C++ и NET Framework
Типы данных C++ и .NET FrameworkС другой стороны, некоторым типам C++ соответствуют классы .NET Framework. Для примитивных типов, таких, как int и float (с плавающей точкой), соответствующие класс...
Программирование на C++ для платформы NET
Программирование на C++ для платформы .NETВ этом разделе главы мы изучим основные аспекты создания кода на управляемом C++. В частности, будут рассмотрены все ключевые слова расширения управляемос...
Управляемые и неуправляемые типы
Управляемые и неуправляемые типыУправляемый тип — тип данных, инициализируемый (обычно с помощью оператора new (создать)) в управляемой динамически распределяемой области памяти, но ни в коем случ...
Управление сборкой мусора
Управление сборкой мусораВ документации по языкам .NET вы могли встречать описание метода Finalize (Завершить), используемого для освобождения ресурсов, не находящихся в управляемой динамически ра...
Типовая безопасность
Типовая безопасностьПрограммы, написанные на C++, не обладают свойством типовой безопасности Программы же на управляемом C++ должны гарантированно обладать указанным свойством Однако, из-за того...
Типы значений
Типы значенийКлючевое слово _value (значение) похоже на _nogc (без сборки мусора), поскольку оно используется для того, чтобы класс или структура не участвовали в сборке мусора Это полезно для опр...
Абстрактные типы
Абстрактные типыЗначение ключевого слова _abstract (абстрактный) очень похоже на значение ключевого слова abstract (абстрактный) в языке Java. Оно также напоминает о сложившейся традиции рассмат...
Место C++ в мире NET
Место C++ в мире .NETОдним из достоинств платформы .NET является то, что для разработки приложений, компонентов и сервисов на основе .NET можно использовать любой из широкого круга языков. Можно п...
Интерфейсы
ИнтерфейсыКлючевое слово _interface (интерфейс) технически не относится к расширению управляемости, так как его можно использовать и в управляемом, и в неуправляемом коде. Однако оно часто использ...
Упаковка и распаковка примитивных типов данных
Упаковка и распаковка примитивных типов данныхУпаковка и распаковка — важная концепция программирования в .NET вне зависимости от того, какой именно язык программирования вы используете. Одно из с...
Делегаты
ДелегатыКлючевое слово _delegate (делегат) используется для объявления класса-делегата, основанного на описании сигнатуры метода. Делегаты очень сходны с указателями на функции в обычном C++, с то...
События
СобытияСобытия представляют собой механизм, посредством которого объект имеет возможность получать информацию о происходящем вне него Событие может быть вызвано неким действием пользователя, напри...
Свойства
СвойстваКлючевое слово _property (свойство) используется для указания на то, что метод получения и/или установки реализует свойство управляемого класса. В отличие от элемента данных (называемого т...
Закрепление управляемых объектов
Закрепление управляемых объектовКлючевое слово _pin (закрепить) указывает на то, что указатель на управляемый объект будет оставаться корректным (т.е. общеязыковая среда выполнения CLR не перемест...
Конечные классы
Конечные классыКлючевое слово _sealed (конечный) указывает на то, что класс или структуру нельзя использовать в качестве базового типа. Другими словами, в иерархии наследования этот класс или стру...
Управляемое приведение типов
Управляемое приведение типовКлючевое слово _try_cast приводит к возникновению исключения System: : InvalidCastException при попытке выполнить приведение типов, не поддерживаемое общеязыковой средо...
Определение ключевых слов в качестве идентификаторов
Определение ключевых слов в качестве идентификаторовКлючевое слово _identifier (идентификатор) позволяет использовать любое слово, включая и ключевое, в качестве идентификатора. Его можно использо...
Обработка исключений
Обработка исключенийБез сомнения, вы уже хорошо знакомы с механизмом исключений в стандартном C++, так что хорошо понимаете, как работают управляемые исключения. Напомним, что платформа .NET (точн...
Использование расширений управляемого C++
Использование расширений управляемого C++При разработке управляемого кода на Visual C++ используются несколько новых ключевых слов, а расширение компилятора C++, позволяющее создавать приложения д...
Атрибуты C++
Атрибуты C++Visual C++.NET поддерживает использование атрибутов, позволяющих создавать Обычный неуправляемый код, такой, как компоненты модели компонентных объектов Microsoft (COM), даже с меньш...
Резюме
РезюмеВ этой паве рассмотрено использование расширений C++ при создании программ и компонентов для платформы NET Изложение основных концепций создания управляемого кода на С-г+ проил пострирован...
Ваша первая программа на управляемом C++ NET
Ваша первая программа на управляемом C++.NETХотя вы, почти наверняка, хорошо знакомы с C++, мы начнем с рассмотрения очень простого, но традиционного примера— программы HelloWorld (Привет, мир). В...
Программа HelloWorld (Привет мир)
Программа HelloWorld (Привет, мир)Чуть ниже приведен пример кода из очень простой управляемой программы, которая выводит на консоль одну-единственную строку. Вы можете открыть сопровождающее реш...
Директива #using и оператор using
Директива #using и оператор usingДиректива fusing делает доступной для компилятора информацию о типах, содержащуюся в сборке. Сборка содержит метаданные (описание информации о типах) и код на пром...
Стандартный вводвывод
Стандартный ввод-выводКласс System:: Console (Система::Консоль) обеспечивает поддержку стандартного ввода-вывода. Метод ReadLine класса System: : Console (Система::Консоль) считывает введенную с к...
Класс System string (Система Строка)
Класс System:: string (Система::Строка)Класс System:: String (Система::Строка) инкапсулирует как управляемый объект строку символов Unicode. Класс String (Строка) определен в пространстве имен Sys...
Класс System Array (Система МAССИВ)
Класс System::Array (Система::МAССИВ)В отличие от массивов в обычном C++, которые являются простым типом указателя, управляемые массивы являются полноценными управляемыми объектами, расположенными...








Начало