I always just avoided confusion by limiting myself to a maximum of 5 arguments for any function or constructor, maybe with a soft limit of 3. Preferring composition over inheritance helps too.