7 Расширения языка C++
Компилятор GNU предоставляет эти расширения языка C++ (и вы также можете использовать большинство расширений языка C в своих программах C++). Если вы хотите написать код, проверяющий наличие этих функций, вы можете проверить наличие компилятора GNU так же, как и для программ C: проверьте предварительно определённую макрокоманду __GNUC__. Вы также можете использовать __GNUG__ для проверки наличия конкретно GNU C++ (см. Предварительно определённые макросы в GNU C Preprocessor).
| • Переменные C++ volatile: | Что представляет собой доступ к объекту volatile. | |
| • Ограниченные указатели: | Ограниченные указатели и ссылки C99. | |
| • Нечёткая ссылка: | Где G++ помещает встраиваемые функции, vtable и т.п. | |
| • Интерфейс C++: | Вы можете использовать один файл заголовков C++ для объявления и определения. | |
| • Инкапсуляция шаблонов: | Способы обеспечения того, что выводится ровно одна копия каждой необходимой инкапсуляции шаблона. | |
| • Связанные методы членов: | Вы можете извлечь указатель на функцию для метода, обозначенного выражением '->*' или '.*'. | |
| • Атрибуты C++: | Атрибуты переменных, функций и типов только для C++. | |
| • Многоверсионность функций: | Объявление нескольких версий функций. | |
| • Связывание пространств имён: | Сильные директивы использования для связывания пространств имён. | |
| • Свойства типов: | Поддержка компилятора для свойств типов | |
| • Исключения Java: | Настройка обработки исключений для работы с Java. | |
| • Устаревшие функции: | Функции, которые исчезнут из G++. | |
| • Обратная совместимость: | Совместимость с более ранними определениями C++. |
Далее: Objective-C, Предыдущее: Расширения языка C, Наверх: Вернуться наверх [Содержание][Индекс]
© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-5.5.0/gcc/C_002b_002b-Extensions.html