Spec-Zone.ru › GCC 4

7 Extensions to the C++ Language

The GNU compiler provides these extensions to the C++ language (and you can also use most of the C language extensions in your C++ programs). If you want to write code that checks whether these features are available, you can test for the GNU compiler the same way as for C programs: check for a predefined macro __GNUC__. You can also use __GNUG__ to test specifically for GNU C++ (see Predefined Macros).

  • C++ Volatiles: What constitutes an access to a volatile object.
  • Restricted Pointers: C99 restricted pointers and references.
  • Vague Linkage: Where G++ puts inlines, vtables and such.
  • C++ Interface: You can use a single C++ header file for both declarations and definitions.
  • Template Instantiation: Methods for ensuring that exactly one copy of each needed template instantiation is emitted.
  • Bound member functions: You can extract a function pointer to the method denoted by a ‘->*’ or ‘.*’ expression.
  • C++ Attributes: Variable, function, and type attributes for C++ only.
  • Function Multiversioning: Declaring multiple function versions.
  • Namespace Association: Strong using-directives for namespace association.
  • Type Traits: Compiler support for type traits
  • Java Exceptions: Tweaking exception handling to work with Java.
  • Deprecated Features: Things will disappear from G++.
  • Backwards Compatibility: Compatibilities with earlier definitions of C++.

© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-4.9.4/gcc/C_002b_002b-Extensions.html

Spec-Zone.ru

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