Interfaces müssen mit as umgewandelt werden! Dabei wird implizit QueryInterface aufgerufen. Das ist nötig, da ein Interface nur ein Zeiger auf eine virtual method table (
VMT) ist, die Zeiger auf alle von dem entsprechenden Interface geforderten Methoden enthält. Und deshalb kann nicht mit dem gecasteten Interfacezeiger (=zeigt immer noch auf eine ISomeinterface-
VMT) die Methode set_name aufgerufen werden, die nicht in ISomeinterface enthalten ist.