Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Visual C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.12.2012, 11:09   #1
rpy3uH
добрый няша
Старожил
 
Аватар для rpy3uH
 
Регистрация: 29.10.2006
Сообщений: 4,804
По умолчанию Дирректива __allowed(on_struct)

Наткнулся на следующую структуру :
Код:
typedef __struct_bcount(Size) struct  _STORAGE_DESCRIPTOR_HEADER {

    DWORD Version;

    DWORD Size;

} STORAGE_DESCRIPTOR_HEADER, *PSTORAGE_DESCRIPTOR_HEADER;
Заинтерисовал __struct_bcount(Size), нашёл его define

Код:
#define __struct_bcount(size)              __allowed(on_struct)
Параметр size не имеет никакого значения. Но что значит __allowed(on_struct)?
rpy3uH вне форума Ответить с цитированием
Старый 18.12.2012, 11:30   #2
Rififi
Старожил
 
Регистрация: 19.08.2009
Сообщений: 2,119
По умолчанию

rpy3uH

Это т.н. "Source code annotation language" (SAL)
используется для уменьшения уровня дефектов в программах ( в основном - в драйверах, для проверок утилитами типа Verifier)

Конкретно это описание означает что структура занимает количество байт, которое указано выражением в скобочках

подробнее см. здесь
http://msdn.microsoft.com/en-us/libr...8VS.90%29.aspx
Rififi вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск