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