Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Руководство_по_C++_CLI.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
8.1 Mб
Скачать

Источник: http://www.functionx.com/cppcli/

Перевод и редактирование В.Н.Овсянник, 2015-2016

1. Введение в C++/CLI 11

1.1 Основы 11

1.1.1 Введение в С 11

1.1.2 Библиотека Win32 11

1.1.3 Введение в С++ 11

1.1.4 Библиотека MFC 11

1.1.5 Microsoft Visual C++ 12

1.1.6 Microsoft Visual Basic 12

1.2 The Microsoft .NET Framework 12

1.2.1   Введение 12

1.2.2   Помощь СОМ 12

1.2.3 Dot NET 13

1.3 C++ и общеязыковая инфраструктура 13

1.3.1 Введение 13

1.3.2 Компилятор 13

1.3.3 Компилятор CL 13

1.4 Беглый экскурс по C++/CLI 14

1.4.1 Функция main() 14

1.4.2 Консольный ввод и вывод 14

1.4.3 Директива препроцессора #pragma region 15

1.4.4 Использование дескрипторов 15

1.4.5 Одномерные массивы 17

1.4.6 Многомерные массивы 17

1.4.7 Передача массивов функциями 19

1.4.8 Классы значения 19

1.4.9 Классы ссылки 20

1.4.10 Интерфейсы 20

1.4.11 Абстрактные классы 22

1.4.12 Запечатанные классы и виртуальные функции 22

1.4.13 Видимость компонентов классов и структур 23

1.4.14 Свойства 24

1.4.15 Деструкторы классов 28

1.4.16 Приведение типов 29

1.4.17 Класс Array 31

1.4.18 Введение в коллекции 35

1.5 Основы C++/CLI 37

1.5.1 Введение 37

1.5.2 Основы кода С++ 37

1.5.3 Создание консольного приложения 37

1.5.4 Открытие проекта 38

1.5.5 Инструкции С++ 38

1.5.6 Introduction to C++ Statements 40

1.5.7 Start Without Debugging 40

1.5.8 Code Comments 40

1.5.9 Indentation  41

1.5.10 Escape Sequences 41

1.6 Введение в классы 42

1.7 Введение в файлы С++ 43

1.7.1 Source Files 43

1.7.2 Practical Learning: Creating a Source File 43

1.7.3 Header Files 44

1.7.4 Practical Learning: Creating a Header File 45

1.7.5 Assemblies 46

1.7.6 Applications 46

1.7.7 The Public and Private Objects of an Assembly 47

1.7.8 Practical Learning: Controlling the Assembly Access of a Class 47

1.7.9 Creating a Class 47

1.7.10 Practical Learning: Creating a Class 48

1.8 The Code Editor 48

1.8.1   Description 48

1.8.2 The Tabs Bar 49

1.8.3 The Scopes Combo Box 49

1.8.4 The Functions Combo Box 49

1.8.5 Code Colors 50

1.9 The Solution Explorer 51

1.9.1   Introduction 51

1.9.2   Using the Solution Explorer 51

1.10 The Class View 51

1.10.1 Introduction 51

1.10.2 Using the Class View 52

1.11 Namespaces and Code Directives 53

1.11.1 Introduction 53

1.11.2 Practical Learning: Including a Class in a Namespace 55

1.11.3 Using a Namespace 56

1.11.4 Using Various Namespaces 57

1.11.5 Nesting Namespaces 59

1.11.6 Built-In Namespaces 60

1.12 C Routines 63

1.13 Primary Details of Program Structure 63

1.13.1 Preprocessors: #include 63

1.13.2 Preprocessors: #define 64

1.14 Pragma Directives 64

1.14.1   Introduction 64

1.14.2 Open Once 64

2. Introduction to Variables 69

2.1 Introduction 69

2.2 The Stack 69

2.3 Variable Declaration 70

2.4 Names in C++ 70

2.5 Keywords 71

3. Data Types 72

3.1 Variable Initialization 72

3.2 Introduction to Data Types 72

3.3 Practical Learning: Introducing Data Types Applications 72

3.4 Integers 72

3.4.1 Signed and Unsigned Numbers 73

3.4.2 Bytes 73

3.4.3 Practical Learning: Declaring a Byte Variable 73

3.4.4 Short Variables 74

3.4.5 Integral Variables 75

3.4.6 Practical Learning: Declaring Unsigned Variables 77

3.4.7 Long Integers 77

3.4.8 Practical Learning: Declaring Long Integers 78

3.4.9 Initializing an Integral Variable 78

3.5 Characters 79

3.5.1   Symbolic Characters 79

3.5.2 Unicode Characters 79

3.5.3 Practical Learning: Using Character Variables 80

3.6 The String: A List of Characters 81

3.7 Decimal Numbers 82

3.7.1 Floating-Point Variables 82

3.7.2 Practical Learning: Using a Single-Precision Variables 82

3.7.3 Double-Precision Variables 83

3.7.4 Practical Learning: Using a Single-Precision Variables 83

3.7.5 Initializing a Double-Precision Variable 84

3.8 Variable Reference 85

3.8.1   The typedef Type Definition 85

3.9 Native References 85

3.10 A Tracking Reference (отслеживаемая ссылка) 88