Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Чтобы предотвратить проблемы, связанные с типами данных, зависящими от реализации, могут вызываться на разных компьютерах, MIDL определяет собственные базовые типы данных.
| Базовый тип | Описание |
|---|---|
| логические | Элемент данных, который может иметь значение TRUE или FALSE. |
| байтов | 8-разрядный элемент данных гарантированно передается без каких-либо изменений. |
| char | 8-разрядный элемент данных без знака. |
| двойные | 64-разрядное число с плавающей запятой. |
| float | 32-разрядное число с плавающей запятой. |
| handle_t | Примитивный дескриптор, который можно использовать для привязки RPC или сериализации данных. |
| hyper | 64-разрядное целое число, которое можно объявить как подписанные или без знака также можно называть _int64. |
| int | 32-разрядное целое число, которое можно объявить как подписанное или без знака. |
| __int3264 | Ключевое слово, указывающее целочисленный тип, имеющий 32-разрядные или 64-разрядные свойства. |
| длинные | Модификатор для int, указывающий 32-разрядное целое число. Можно объявить как подписанные или без знака. |
| короткие | 16-разрядное целое число, которое можно объявить как подписанный или без знака. |
| небольшие | Модификатор для int, указывающий 8-разрядное целое число. Можно объявить как подписанные или без знака. |
| wchar_t | Расширенный тип символов, поддерживаемый в качестве расширения Майкрософт для IDL. Поэтому этот тип недоступен при компиляции с помощью /коммутатора osf. |
Файл заголовка Rpcndr.h предоставляет определения для большинства этих базовых типов данных. Ключевое слово int распознается и передается на 32-разрядных платформах. На 16-разрядных платформах тип данных in t требует модификатора, например коротких или длинных, чтобы указать длину.
Хотя void * * распознается как универсальный тип указателя по стандарту ANSI C, MIDL ограничивает его использование. Каждый указатель, используемый в удаленной или сериализации операции, должен указывать на базовые типы или типы, созданные из базовых типов. (Существует исключение: дескриптор контекста определяется как типы void. Дополнительные сведения см. в разделе Контекстные дескрипторы.)