Recently Qt had made some changes and we can't semantically move QScopedPointer so we can't have a  QList< QScopedPointer< SomeClass> > , based on my other question.
My second solution was using QScopedArrayPointer. But we cannot use these containers for abstract classes, which was my original problem. Is there any other way to use some list of QScopedPointer  for abstract classes?