### C and C++ Compatibility

The differences between ISO/ANSI C and C++ fall into two categories:

- Constructs found in both C++ and ISO/ANSI C, but treated differently in the two languages
- Constructs found in C++ but not in ISO/ANSI C, as follows:

> - C++ Comments
> - Scope operator (::)
> - Free store management using the operators new and delete
> - Linkage specification for functions
> - Reference types
> - Default arguments for functions
> - Inline functions
> - Classes
> - Anonymous unions
> - Overloaded operators and functions
> - Class templates and function templates
> - Exception handling

Note: The IBM C and C++ Compilers also supports anonymous unions in C, but the implementation is slightly different from C++. For more information, see Anonymous Unions in C.