@_tulayang It would be nice to know, where you lost my explanation, or where 
you started to skip reading it, because the point was to create a single type 
that can be used to implement `foobar`, and both `MyImplementationA` and 
`MyImplementationB` can be casted to this single type. Of course using generics 
for `foobar` works, too, but that has the disadvantage, that for each type `T` 
foobar is called, a new version of that get's compiled. That's not generally a 
bad thing, but the disadvantage is that in some cases generics, or templates 
(how generics are called in c++) can cause code bloat.

Reply via email to