In Go, if the type has all the methods that the interface defined then it can be assigned to that interface variable without explicitly inheriting from it.
Is it possible to mimic this feature in C/C++?