0 / 0 / 0
Регистрация: 17.09.2021
Сообщений: 44
1

Паттерн делегирования

19.04.2022, 22:12. Показов 897. Ответов 3
Метки c++ (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте. Есть схема классов, может кто подскажет идею с каким классом связать делегирование (нужно сделать паттерн делегирование), без реализаций, только идею?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
19.04.2022, 22:12
Ответы с готовыми решениями:

Двойное использование делегирования конструкторов
Есть клас square который сначало делигирует свою роботу предку, но я еще хочу чтобы он затем и...

паттерн и строка C++
Возникла необходимость производить поиск в строке по паттерну, который может содержать символ '*' и...

Паттерн Спецификация
Нужен легкий пример использования паттерна Спецификация. Желательно на с++ или с#

Паттерн Builder
Вот у меня есть код примера реализации паттерна Builder(другие примеры не предлагать). В классе...

3
Just Do It!
4016 / 2400 / 639
Регистрация: 23.09.2014
Сообщений: 7,713
Записей в блоге: 2
19.04.2022, 22:43 2
https://www.cyberforum.ru/post15686582.html
https://www.cyberforum.ru/post15693886.html
0
0 / 0 / 0
Регистрация: 17.09.2021
Сообщений: 44
20.04.2022, 00:10  [ТС] 3
Если вот такие наброски, то с каким классом можно связать?
Вложения
Тип файла: txt 1.txt (10.1 Кб, 6 просмотров)
0
Just Do It!
4016 / 2400 / 639
Регистрация: 23.09.2014
Сообщений: 7,713
Записей в блоге: 2
20.04.2022, 00:25 4
Цитата Сообщение от ifolkob Посмотреть сообщение
наброски
даже если это наброски, то всё равно они должны быть compilable

cудя по этому вашему:
C++
1
2
3
4
5
6
class Interface {
    private: string GetType(); // Получить тип пользователя
    private: string GetName(); // Получить имя пользователя
    private: string GetPassword(); // Получить пароль пользователя
    private: string GetTema(string Naz);    // Получить одну тему пользователя
};
у мя возникает подозрение, что вам нужны не делегаты а тупо стандартные полиморфные методы.

Цитата Сообщение от ifolkob Посмотреть сообщение
то с каким классом можно связать?
вопрос некорректно заданный, так как истолковывается многомысленно...

Цитата Сообщение от ifolkob Посмотреть сообщение
Паттерн делегирования
идея(взято у вики):
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
#include <iostream>
 
class I
{
public:
    virtual void f() = 0;
    virtual void g() = 0;
};
 
class A : public I
{
public:
    void f()
    {   std::cout << "A: вызываем метод f()" << std::endl;
    }
    void g()
    {   std::cout << "A: вызываем метод g()" << std::endl;
    }
};
 
class B : public I
{
public:
    void f()
    {   std::cout << "B: вызываем метод f()" << std::endl;
    }
    void g()
    {   std::cout << "B: вызываем метод g()" << std::endl;
    }
};
 
class C : public I
{
public:
    // Конструктор
    C() : m_i ( new A() ) { }
    // Деструктор
    virtual ~C()
    {   delete m_i;
    }
    void f()
    {   m_i->f();
    }
    void g()
    {   m_i->g();
    }
    // Этими методами меняем поле-объект, чьи методы будем делегировать
    void toA()
    {   delete m_i;
        m_i = new A();
    }
    void toB()
    {   delete m_i;
        m_i = new B();
    }
private:
    // Объявляем объект методы которого будем делегировать
    I * m_i;
};
 
int main()
{   C c;
 
    c.f();
    c.g();
    c.toB();
    c.f();
    c.g();
 
    return 0;
}
 
/* Output:
A: вызываем метод f()
A: вызываем метод g()
B: вызываем метод f()
B: вызываем метод g()
*/
0
20.04.2022, 00:25
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
20.04.2022, 00:25
Помогаю со студенческими работами здесь

Паттерн Embedded Value
Доброго времени суток, вопрос по паттерну Embedded Value (объединенное свойство). Это тема моей...

Паттерн прототип/
Добрый день, можно пример из реального проекта, где пригодился этот паттерн. Нужно знать, но кроме...

Паттерн Bridge
нужно написать аудиоплеер, используя паттерн Bridge, с помощью которого надо реализовать...

Паттерн декоратор
доброго времени суток уважаемые форумчане, помогите пожалуйста разобраться, где я допустил ошибку? ...

Паттерн Singleton
Здравствуйте, уважаемые участники форума Столкнулся с проблемой Имеется клиентское приложение,...

Паттерн стратегия
Всем привет! Начал изучать паттерны. Одним из наиболее понятных и интересных мне оказался...

Паттерн Singleton
Мне вот дали такой код как паттерн Singleton: #include &quot;stdafx.h&quot; template &lt;class T&gt; class...


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

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

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