Same class name in different C++ files

This is a violation of the one definition rule (C++03, 3.2/5 “One definition rule”), which says (among other things): There can be more than one definition of a class type (clause 9), … in a program provided that each definition appears in a different translation unit, and provided the definitions satisfy the following requirements. Given … Read more