У меня есть контейнерный класс, мы назовем его
template <class T> CVector { ... }
Я хочу сделать что-то другое с этим классом, когда T является типом указателя, например что-то вроде:
template <class T*> CVector< SomeWrapperClass<T> >;
где SomeWrapperClass ожидает тип указываемой вещи в качестве ее параметра. К сожалению, этот синтаксис не совсем работает, и с некоторыми копаниями, я не нашел хороший способ получить что-то вроде этого работает.
Почему это так? Я хочу изменить, в очень большом приложении, как работают некоторые из наших контейнеров, когда тип, для которого они специализируются, является указателем, а не указателем - и в идеале, я хотел бы сделать это без изменения ~ 1000 мест в коде, где есть такие вещи, как CVector<Object*>
против CVector<int>
или что-то в этом роде, и кажется, что играть в игры с частичной специализацией - путь.
Я нахожусь здесь?