Cpp Dependency Inversion Example