Форум программистов, компьютерный форум, киберфорум
Наши страницы

C++

Войти
Регистрация
Восстановить пароль
 
Nayataya
0 / 0 / 0
Регистрация: 29.03.2017
Сообщений: 3
#1

Указатель на абстрактный шаблонный класс - C++

29.03.2017, 08:11. Просмотров 225. Ответов 4
Метки c++ (Все метки)

Есть абстрактный шаблон класса и 3 производных от него шаблонов классов. Так же есть шаблонная функция, в которую нужно передать указатель на абстрактный класс. В функции через new создается объект случайно выбранного производного класса уже с определенным типом. Собственно, вопрос, как создать указатель на шаблонный класс?
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.03.2017, 08:11
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Указатель на абстрактный шаблонный класс (C++):

Абстрактный класс без виртуальных функций - C++
Мне нужен класс без виртуальных функций, но чтобы его нельзя было создать. Можно ли такое реализовать?

Зачем нужен указатель на указатель при работе с однонаправленным списком? - C++
День добрый. Столкнулся с непониманием этой темы. В частности, совершенно непонятен алгоритм инициализации такого вот списка. Например:...

Если в класс нужно передать указатель на указатель на массив строк неизвестной длинны? - C++ Builder
Как проинициализировать массив строк wchar_t * (произвольного размера) , если его нужно передать в конструктор класса ? wchar_t *A1 =...

Указатель на класс - C++ Builder
добрый день. Написал прогу с классами но преподу не понравилось, он говорит "вершины должны хранить указатель на список ребер, которые из...

Функция должна принимать указатель на неизвестный класс? - C++ Builder
Ситуация: 1.срр 2.срр 1.h 2.h В 1.h создан класс myClass, в 2.h описание функции, которая должна принимать указатель на...

Создать абстрактный базовый класс с виртуальной функцией - сумма прогрессии. Создать производные классы: ариф - C++ Builder
Здравствуйте, помогите разобраться с задачей Создать абстрактный базовый класс с виртуальной функцией - сумма прогрессии. Создать...

4
GbaLog-
Любитель чаепитий
3078 / 1417 / 342
Регистрация: 24.08.2014
Сообщений: 5,040
Записей в блоге: 1
Завершенные тесты: 2
29.03.2017, 08:23 #2
Цитата Сообщение от Nayataya Посмотреть сообщение
как создать указатель на шаблонный класс?
C++
1
SomeClass<int> * some = new SomeClass<int>;
Добавлено через 1 минуту
Если надо указатель абстрактного класса, то:
C++
1
ISomeClassInterface * some = new SomeClass<int>;
0
Nayataya
0 / 0 / 0
Регистрация: 29.03.2017
Сообщений: 3
29.03.2017, 08:26  [ТС] #3
Я имею ввиду не определяя тип этого указателя, чтобы он так же был шаблонным. Или следующая запись справедлива:
C++
1
BaseClass<int> * Cl = new DerClass<double>
?
0
GbaLog-
Любитель чаепитий
3078 / 1417 / 342
Регистрация: 24.08.2014
Сообщений: 5,040
Записей в блоге: 1
Завершенные тесты: 2
29.03.2017, 08:36 #4
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Надо, чтобы типы совпадали, так, как у вас в примере, не получится.
В любом случае в производном классе какой-то шаблонный параметр придется передать с тем же типом, с каким вы инстацируете BaseClass.
1
Nayataya
0 / 0 / 0
Регистрация: 29.03.2017
Сообщений: 3
29.03.2017, 09:29  [ТС] #5
Спасибо!
0
29.03.2017, 09:29
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.03.2017, 09:29
Привет! Вот еще темы с ответами:

Шаблонный класс, union и массив - IntelliSense в шоке? (VC++ Express 2010) - Visual C++
Может, у меня одного такая ошибка? В общем, VS Express 2010, консольное приложение - пишу код такого содержания: template&lt;class T&gt; ...

Абстрактный шаблонный класс - C++
Вообщем какое дело. У меня есть класс матрица, который сделан с использованием шаблонов и STL. В нем перегружены операторы ввода/вывода в...

Указатель на шаблонный класс - C++
Есть ли возможность инициализировать указатель на класс с шаблоном, но не указав при этом тип, ну т.е. написать не так Value_Class...

Обобщенный указатель на шаблонный класс - C++
Здравствуйте. Имеется класс template &lt;typename T&gt; class TListManager { protected: TList &lt;T&gt; *head; TList &lt;T&gt; *tail; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.