Das geht schon (seit C++17, was ich zugegeben auch nicht ständig auf dem Schirm habe), wie @manni66 schon erwähnt hat, mit inline. Ob man das machen sollte, weiß ich nicht. Ich vermute mal, das ist sinnvoll bei Klassentemplates oder sonst Klassen, die aus irgendeinem Grund komplett im Header definiert sind, für die man nicht extra ein Implementationsfile mit der einen Definition anlegen will.