I have wrapper class and I have pass its object to a function.
/// some functionality
fun(wrapper & ob)
class wrapper:public Interface
If you want your function to only accept instances of the
wrapper class, use
fun(const wrapper& ob)
if you do not intend to modify it.
If you want your function to accept anything that implements the
Interface class (only really useful if there are more classes than just
wrapper inheriting from
Interface), then use:
fun(const Interface& ob)
The choice depends on the use-case.