const
в типе возврата (MyClass* const
) действительно совершенно бессмысленно. В то же время, это не причиняет вреда, кроме как сделать код более подробным. Я лично удалил бы это.
Чтобы понять, почему это бессмысленно, рассмотрим следующее:
MyClass* p = Func(statement);
Какую разницу сделал const
?
Другими словами, возврат T* const
концептуально не отличается от возврата const int
.