Спецификация Microsoft
Это ключевое слово позволяет установить дополнительные атрибуты в определения. Например, классов или функций. Атрибуты могут быть следующие.
allocate("segname") // определяет сегмент данных для распределения
dllimport // экспортируемое из DLL
dllexport // импортируемое в DLL
naked // генерация кода без оболочки функций
noreturn // функция не имеет возврата
nothrow // в функции не будет исключений
novtable // у класса не будет виртуальной таблицы
property({get=get_func_name|, put=put_func_name}) // для виртуальных членов в классах т структурах.
selectany // для оптимизации переменных
thread // для локальных переменных потока
uuid("ComObjectGUID") //Компилятор прилагает GUID к классу или структуре
Применение этого ключевого слова требует опыта. Если с импортом, экспортом более менее понятно, то зачем говорить, например что у функции не будет исключений nothrow? Тут надо знать, что если функция может вызвать исключение, то к ней дописывается определенный код. А вот применение этого ключевого слова этот код удаляет. Вроде как функция будет меньше. Или когда виртуальной таблицы нет novtable, то же будет меньше.
Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Каев Артем.
Используются технологии uCoz
|