Форум программистов, компьютерный форум, киберфорум
C++
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
C++ Связать Matlab и visual studio 2010 https://www.cyberforum.ru/ cpp/ thread362579.html
Необходимо подключить библиотеки matlab к visual studio в c++. Проблема в том что я даже описания найти не могу в каких библиотеках матлаба какие функции находятся. Может кто-нибудь помочь?
Help Me Gps Navigator C++
Помогите с прогой GPS NAVIGATOR хотябы сделать 1 маршрут от а до б.... все советы учту есть сpp код ..... #include <iostream> #include <iomanip> #include <queue> #include <string> #include <math.h> #include <ctime> using namespace std;
C++ Помогите разобраться с шаблонами Пытаюсь реализовать новую для себя методику "службы класса". Все хорошо работало, пока не возникла необходимость в качестве клиента слжбы задействовать не обычный класс, а класс-шаблон. Впрочем, все по порядку... Не ругайте за обилие комментариев, я их сделал специально для того, что бы люди смогли понять мою задумку. Здесь линк на более удобный пастербин:... https://www.cyberforum.ru/ cpp/ thread361182.html C++ как раскрасить стаистический рисунок? #include <graphics.h> #include <stdlib.h> #include <stdio.h> #include <conio.h> void Box(int x1, int y1, int x2, int y2); int main(void) { int xmax, ymax; https://www.cyberforum.ru/ cpp/ thread361148.html
диспечер задач C++
пожалуйста скиньте диспечер задач на с++ или на с# у кого есть, а то вообще времени ни на что не хватает, чтоб еще его делать.
C++ Требуется помощь!Робот-фермер.. https://www.cyberforum.ru/ cpp/ thread357033.html
Доброго времени суток!Требуется помощь ,я только начинаю учить си ++,поэтому прошу проявить терпение в случае чего:). Значит задача такова: Робот фермер различает размер апельсинов ( большие / маленькие), цвет апельсинов(orange- спелые, orange-green - полуспелые и green- зелёные). Он срезает Н апельсины по следующему алгоритму: 1.Спелые апельсины ( orange) он делит...
C++ Разработка для Windows CE Доброго времени суток! Подскажите пожалуйста, что используется для разработки ПО для Windows CE 6 и выше? Слышал, что VS 2008 содержит что-то вроде эмулятора. Есть ли более ранние версии VS, которые так умеют? Какие дополнительные пакеты для этого нужны? https://www.cyberforum.ru/ cpp/ thread356620.html C++ Странная ошибка при сборке nasm
всем привет. нужно собрать nasm для вендус. использую MSYS+MinGW. configure прошел успешно. при сборке получаю такое: nasm.h:476:5: error: expected identifier before numeric constant nasm.h:882:26: error: 'PREFIX_ENUM_LIMIT' undeclared here (not in a function)
C++ Прослушать запись в файл Доброе утро! Стоит задача записи некоторых атрибутов в CAD файл (UG) без ее запуска. Если изменять текущие атрибуты в файле без добавления или исключения символов, то файл запускается нормально. но если удалить хоть одну букву, то запускатсья перестает. Встает вопрос возможно ли прослушать какие записи делает программа Unigraphics в свой кад фал? Имеется ввиду пишет ли она какие-то... https://www.cyberforum.ru/ cpp/ thread355686.html C++ Кодировка 8BITMIME https://www.cyberforum.ru/ cpp/ thread355333.html
Может у кого есть готовые алгоритмы шифровки base64, можно пример?
C++ Передать логин и пароль на SMPT сервер
В общем вопрос по теме топика, програмно подконнектился к smtp.mail.ru, но не знаю как передать на него свой логин и пароль Вот как послал меня сервер recv - 503 Administrative prohibition -- authorization required. Users in your domain are not allowed to send email without authorization. See http://help.mail.ru/mail-help/mailer/popsmtp for details. Вобщем как я понял проблемма в том...
C++ Модификация AST дерева GCC https://www.cyberforum.ru/ cpp/ thread355055.html
всем привет. есть задумка реализовать для GCC плагин расширяющий/добавляющий некоторые возможности С++ языку. проблемы со сбором информации из AST нет. могу получить любую необходимую мне информацию о единице трансляции. но проблема в модификации AST. вопрос в том, может ли кто-то подсказать ссылки/доки/исходники по теме? спасибо.
Заблокирован
0

Помогите решить конкретную задачу связанную с шаблонами - C++ - Ответ 2049126

07.10.2011, 17:18. Показов 1042. Ответов 1
Метки (Все метки)

Author24 — интернет-сервис помощи студентам
Такая задача: есть три класса, один простой, другой шаблонный, а третий - интерфейсный.
Простой класс и шаблонный - наследуются от интерфейса, и получают его в своё распоряжение.
Но простой класс юзает интерфейс одним способом, а шаблонный - другим. Как грамотно специализировать методы интерфейса для каждого класса?


1. TInterface<клиент> Интерфейс. Имеет кучу методов с дефолтными реализациями.
Не предназначен для самостоятельного существования.
Должен быть унаследован конкретными классами-клиентами.

2. Client Обычный класс клиент. Наследует интерфейс, и если нужно - переопределяет его поведение при помощи уточнения отдельных методов интерфейса

class Client : public TInterface<Client > {}; //принцип наследования интерфейса.

Теперь для TInterface<Client > можно специализировать хоть весь интерфейс,
хоть отдельные его методы

3. TClient<Parametr> клиент-шаблон. Тоже наследует интерфейс, и переопределяет его поведение.

//принцип наследования интерфейса.
template<class Parametr>
class TClient : public TInterface<TClient<Parametr> > {};


Но фишка в том, новое поведение интерфейса справедливо для любого <Parametr>
Как сделать так, что бы можно было один раз переопределить интерфейс для TClient<Parametr> ?
А не переопределять его каждый раз заного в ручную для каждого нового конкретного значения Parametr ?

Поясняю на конкретном примере:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
//////////интерфейс////////////////////
template <class classClient>
class TInterface
{
    public: Print(const string& text) const { cout << text; }
}
 
//////////обычный клиент//////////////
class Client: public TInterface<Client> {}
template<> TInterface<Client>::Print(const string& text) const { cout << "обычный класс-клиент: "<< text; }
 
//////////шаблонный клиент///////////
 template<class Parametr>
 class TClient : public TInterface<TClient<Parametr>  >  {}; 
 
 
template<> TInterface<TClient<int> >::Print(const string& text) const    { cout << "шаблонный класс-клиент<int>: "  << text; }
template<> TInterface<TClient<char> >::Print(const string& text) const { cout << "шаблонный класс-клиент<char>: "<< text; }
как сделать для:

template<> TInterface<TClient<Parametr> >::Print(const string& text) const { cout << "обычный класс-клиент: "<< text; } // ?????????


Мне пришло в голову только одно:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
//переопределяем весь класс интерфейса целиком для ситуации, когда клиент-шаблон
template<  class Parametr, template<class Parametr> class TClient >
class TIConsole< TClient <Parametr> >
{
     //копипастим весь интерфейс из базового TInterface<клиент>
     //Вот как сделать так, что бы не надо было хотя б копипастить?
     // Копипаста ж зло...
     //есть идея использовать препроцессор.... но это же варварство...
 
     public: Print(const string& text) const 
                { 
                      cout << "шаблонный класс-клиент<Parametr>: "  << text;   
                      Parametr obj; obj.Work();
                }
};


Вернуться к обсуждению:
Помогите решить конкретную задачу связанную с шаблонами C++
0
Заказать работу у эксперта
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
07.10.2011, 17:18
Готовые ответы и решения:

Помогите разобраться с шаблонами
Пытаюсь реализовать новую для себя методику &quot;службы класса&quot;. Все хорошо работало, пока не возникла...

помогите решить задачу
5 элементов массива, содержащего данные размера 2 байта, хранящегося по адресу 0хFF31 копировать в...

Помогите пожалуйста решить задачу с динамической памятью и указателями
Тема: Структуры, указатели. Цель работы: научиться работать с указателями, описать структуру,...

Как решить проблему с шаблонами или это глюк компилятора C++ Builder 5?
Есть прога: template &lt; class TYPE &gt; class XXX { friend ostream &amp;operator&lt;&lt;(ostream &amp;,...

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

Помогите решить задачу на C++
Построить все слова длины n&gt;0 в алфавите скобок &quot;(&quot; и &quot;)&quot;, представляющие правильные скобочные...

Помогите решить простую задачу по C++
Так получилось, но пропустил все пары по c++, а задачу решить надо... Вот она: enum K { one,...

помогите решить задачу
Написати програму в C++ яку водиться: Дата/Місяць/Рік і виводитись має Місяць/День/Рік ...

Помогите решить простенькую задачу
Заданы массивы вещественных чисел X и Y. Сформировать массив Z из положи-тельных элементов массивов...

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