C++ is a complex language and an evolving one, and its standard definition (the ISO C++ standard) was only recently completed. As a result, your C++ compiler may occasionally surprise you, even when its behavior is correct. This section discusses some areas that frequently give rise to questions of this sort.
|• Static Definitions:||Static member declarations are not definitions|
|• Name lookup:||Name lookup, templates, and accessing members of base classes|
|• Temporaries:||Temporaries may vanish before you expect|
|• Copy Assignment:||Copy Assignment operators copy virtual bases twice|