Spec-Zone.ru › GCC 7

6.32.8 Атрибуты переменных Microsoft Windows

Эти атрибуты можно использовать для целей Microsoft Windows. x86 Атрибуты переменных для дополнительных атрибутов совместимости Windows, доступных на всех x86-целях.

dllimport
dllexport

Атрибуты dllimport и dllexport описаны в Атрибуты функций Microsoft Windows.

selectany

Атрибут selectany задаёт семантику «link-once» для инициализированной глобальной переменной. Когда линковщик сталкивается с несколькими определениями переменной, он выбирает первое и отбрасывает остальные. Согласно использованию в Microsoft компиляторе, линковщик не будет выдавать предупреждений о различиях в размерах или содержимом нескольких определений.

Хотя основное использование этого атрибута предназначено для типов POD, атрибут также может быть применён к глобальным объектам C++, которые инициализируются конструктором. В этом случае код статической инициализации и уничтожения объекта генерируется в каждом переводе, определяющем объект, но вызовы конструктора и деструктора защищены переменной блокировки link-once.

Атрибут selectany доступен только для целей Microsoft Windows. Вы можете использовать __declspec (selectany) как синоним для __attribute__ ((selectany)) для совместимости с другими компиляторами.

shared

В Microsoft Windows, помимо размещения определений переменных в именованном разделе, этот раздел также может быть совместно использован между всеми работающими копиями исполняемого файла или DLL. Например, эта небольшая программа определяет общие данные, помещая их в именованный раздел shared и помечая раздел как допускающий совместное использование:

int foo __attribute__((section ("shared"), shared)) = 0;

int
main()
{
  /* Read and write foo.  All running
     copies see the same value.  */
  return 0;
}

Вы можете использовать атрибут shared только вместе с атрибутом section с полностью инициализированным глобальным определением из-за работы линковщиков. Подробнее смотрите в атрибуте section.

Атрибут shared доступен только для целей Microsoft Windows.

Далее: Атрибуты переменных MSP430, Предыдущий: Атрибуты переменных MeP, Наверх: Атрибуты переменных [Содержание][Индекс]

© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-7.5.0/gcc/Microsoft-Windows-Variable-Attributes.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API