Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Добавление текста в массив https://www.cyberforum.ru/ cpp-beginners/ thread1692093.html
Есть массив на 80 ячеек (char), в него записано на две-три (без разницы), и необходимо вплотную к записанному дописать некоторые символы. Заранее благодарен.
Гномья сортировка (массивы) C++
Помогите написать программу "гномьей сортировки".
C++ Как добавить паузу перед завершением программы? https://www.cyberforum.ru/ cpp-beginners/ thread1692075.html
#include "stdafx.h" #include <stdio.h> /* печать таблицы температур по Фаренгейту и Цельсию для fahr = 0, 20, ..., 300 */ int main() { int fahr, celsius; int lower, upper, step;
C++ Удалить столбец из матрицы https://www.cyberforum.ru/ cpp-beginners/ thread1692061.html
Ввести матрицу размером m на n и число k. Удалить k-й столбец из матрицы. Вывести полученную матрицу
C++ Почему не работает Сортировка выбором?
Не понимаю, почему не работает данный код. Был бы очень благодарен, если бы кто-нибудь объяснил PS: Готовые решения, пожалуйста, не кидайте, для этого я бы сюда не писал. #include...
C++ Как ограничить длину вводимой строки? https://www.cyberforum.ru/ cpp-beginners/ thread1692047.html
Короче, есть задачка: Напишите программу на "родном" С++, которая читает с клавиатуры число (целое) и имя (до 15 символов). Спроектируйте программу так, чтобы данные вводились в одной функции, а...
C++ Сфоpмиpовать массив из номеpов столбцов, в котоpых находятся минимальные элементы каждой строки (BorlandC++) https://www.cyberforum.ru/ cpp-beginners/ thread1692033.html
Как сделать задание "Дан массив А pазмеpом m*n. Сфоpмиpовать массив NS из номеpов столбцов, в котоpых находятся минимальные элементы каждой строки. " У меня есть подобный код : #include<stdio.h>...
C++ Создать каталог организаций города и отсортировать по названию
Создать каталог организаций города (динамический массив) и отсортировать по названию ( friend - функция). Помогите пожалуйста #include <iostream> #include <conio.h> #include <stdio.h> using...
C++ Даны два массива. Сформируйте массив С, состоящий из общих элементов массива А и В https://www.cyberforum.ru/ cpp-beginners/ thread1691995.html
Даны два массива: массив А из n элементов и массив В из m элементов. Сформируйте массив С, состоящий из общих элементов массива А и В. Для формирования массива С напишите функцию с...
C++ Перегрузка "+" в классе матрица Добрый вечер При сложении двух матриц, прибавляет только 1 рядок обоих, остальные не изменяет. Помогите пожалуйста найти ошибку в коде: #include <iostream> using namespace std; class Matrix... https://www.cyberforum.ru/ cpp-beginners/ thread1691984.html
При вводе данных программа пропускает операции cin C++
Описать структуру с именем note, содержащую следующие поля:  фамилия, имя;  номер телефона;  дата рождения (массив из трех чисел). Написать программу, выполняющую следующие действия: ...
C++ Функция преобразующая данные исходного файла в текстовый файл Всем привет. задание на картинке. Все сделал( записывает в двоичный и считывает потом), выводит, но вот с переводом из двоичного в текстовый получается фигня, все символы, что были в двоичном... https://www.cyberforum.ru/ cpp-beginners/ thread1691936.html
0 / 0 / 0
Регистрация: 18.11.2014
Сообщений: 28
0

Возврат объекта шаблонного типа от типа Type из специализации шаблона метода от того же типа - C++ - Ответ 8920146

22.03.2016, 21:40. Показов 1877. Ответов 5
Метки (Все метки)

Доброго времени суток, пишу класс содержащий несколько std::set от разных типов, нужно сделать метод возвращающий указатель на нужное std::set, в зависимости от того какой тип был подан в шаблон, хочу это реализовать специализацией шаблонов, в черновиках стандарта похожего не нашел.

Класс с шаблоном метода:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
typedef std::set<FrameSelection*> FrameSet;
typedef std::set<Foo*> FooSet;
 
class SelectionManager {
protected:
    Project* current_project_;
    FrameSet   frames_;
    FooSet      foo_;
...
public:
    template < typename TContextRepresented >
        std::set<TContextRepresented*> *
          getSelectionSetPtr() { return 0; }
...
};
специализация шаблона для типа FrameSet

C++
1
2
3
4
5
template <> inline std::set<FrameSelection*>*
    SelectionManager::getSelectionPtr
                        < std::set, FrameSelection >() {
        return &frames_;
    }
заметим, что специализация шаблона для типа FrameSet, в файле .cpp у меня обьявляется как inline, но возвращает 0, видимо из за того что это не работает, если определять специализацию в хидере в теле класса, то вылетают ошибки.

Возможнно ли вообще такое? Где об этом почитать? Если в черновиках стандарта и гугле не нашел? Или же примера кода будет достаточно.

Вернуться к обсуждению:
Возврат объекта шаблонного типа от типа Type из специализации шаблона метода от того же типа C++
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.03.2016, 21:40
Готовые ответы и решения:

Явная специализация метода для типа шаблонного класса
Добрый вечер, уважаемые знатоки! :) Хочу задать вопрос по созданию шаблонов. В общем, пусть у меня...

Создать переменную типа, хранящегося в переменной типа Type
Здравствуйте. Гугл не помог, потому обращаюсь за помощью к вам. Пишу загрузку (не важно чего) из...

Можно ли присвоить объекту основного типа значение объекта пользовательского типа?
Правильно ли я понимаю, что SomeClass obj; int x = obj; или SomeClass obj; int x = 5 +...

Предполагается ли в C# синтаксис для создания переменной того типа, который указан в переменной Type type
Как это мне представляется: Type type = new double().GetType(); type a = 3.2; type b = 4.1;...

5
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.03.2016, 21:40
Помогаю со студенческими работами здесь

Как вызвать из одного класса (для метода типа void) метод типа boolean другого класса?
ребят, только учусь и конечно, вопросов возникает много. ситуация вот в чем. есть массив. я должна...

Как можно определить что-то типа процедурного типа или классового метода (как в Delphi)?
Подскажите: как можно определить что-то типо процедурного типа или классового метода(как в...

Передать массив элементов(типа int) объекта, в функцию из массивов(типа int)
Представьте такую ситуацию. Есть у вас массив чисел: Mass И вы хотите передать его в функцию. Я...

Условие типа if( масив типа char[x] [y] != переменная типа char) не срабатывает
Создал функцию ChangeWay(). Все, кроме if(map !=ar) (обе переменные типа char) работает...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru