1. The ANSI C++ added many new characteristics to the original C++. The new characteristics added enable improved achievements in complicated conditions.
2. The ANSI c++ has introduced new data types to enable a better scope of standard data types in C++. These new data are bool and wchart_t.
3. ANSI c++ defined new cast operators are static_cast, dynamic_cast, reinterpret_cast, and constant_cast.
4. The static_cast operator is used for the conversion of standard data types.
5. The const_cast operator explicitly modifies the const or volatile of the Âvariable.
6. The reinterpret_cast operator is useful when the programmer wants to alter one type into a basically dissimilar type.
7. The dynamic_cast operator is used to change the type of an object during program execution. It is frequently used to type cast on polymorphic objects.
8. The typeid operator is useful to know the types of strange objects. During program execution, we can obtain their class name.
9. The keyword explicit is advantageous to declare the constructors of a class as being explicit.
10. The keyword mutable is used when we need to declare a constant object but partly; that is, a specific data variable can be modified.
11. C++ allows defining variables with a different scope such as local, global, blocks classes, functions, etc. ANSI C++ has added a new keyword namespace to declare a scope that has global variables. The C++ standard library is the better example of a namespace.
12. The namespace can be defined in the programs. The declaration of a namespace is same as the class declaration except that the namespace is not terminated by a semi-colon.
13. It is also possible to declare a nested namespace. When one namespace is nested in another namespace, it is known as a nested namespace.
14. A namespace without a name is known as an unnamed namespace. The members of unnamed namespaces can be accessed globally in all scopes.