Приведение типов шаблонов C ++ с производными
Я пытаюсь привести из одного дженерика в другой, сказать:
myClass<MoreAbstract> anItem = myclass<DerivateFromMoreAbstract> anotherObject;
Или сделать что-то вроде
aFunction(anotherObject); // myclass<DerivateFromMoreAbstract> anotherObject
где подпись функции
aFunction(myClass<MoreAbstract> item);
Фактически, myClass - это упрощенная реализация shared_ptr, которую я нашел в Интернете. Мне интересно, есть ли способ, которым я могу на самом деле переключаться с одного типа указателя на другой, будучи инкапсулированным.
Есть ли способ сделать такой кастинг? Если это так, что будет правильным способом сделать это?
Если это кому-нибудь поможет, VC ++ выдаст мне эту ошибку:
Error 1 error C2440: 'type cast' : cannot convert from 'myClass<T>' to 'myClass<T>'