Форум программистов, компьютерный форум CyberForum.ru

Проектирование интерфейса: передача результата по цепочке - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Немного теории http://www.cyberforum.ru/cpp-beginners/thread423335.html
Доброго дня, форумчане! Пишу курсач на тему Системы программирования. Препод сказал, что у меня нет информации о видах систем программирования. Гугл по такому запросу ничего подходящего не выдает. Прошу помощи, объясните кто-нибудь, что именно я должен написать о видах систем или ссылку на ресурс с такой информацией
C++ Как правильно выделить память под структуру? имеются структуры struct ship { struct point first; struct point last; }; struct point { int x; http://www.cyberforum.ru/cpp-beginners/thread423328.html
C++ Недоработанное программа
// 11.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include <stdio.h> #include <ctype.h> int digitssum(const char * s) { return ( *s ) ? ( isdigit(*s) ) ? *s - '0' + digitssum(s+1) : digitssum(s+1) : 0;}
C++ Нужно превести задачу с Delphi на С++
const n=10; type Segments=record a,b:Integer; end; var ArrayOfSegments:array of Segments; i,j,count,Point,MaxPos:Byte; Begin
C++ Дан массив размера N. Возвести в квадрат все его локальные миниму-мы (то есть числа, меньшие своих соседей) http://www.cyberforum.ru/cpp-beginners/thread423311.html
Задачу на массив оформить с помощью лямда выражений. Элементы массива получить с помощью Random. На С++
C++ Даны строки S, S1 и S2. Заменить в строке S все вхождения строки S1 на строку S2. Задачу на массив оформить с помощью лямда выражений. Элементы массива получить с помощью Random. На С++. подробнее

Показать сообщение отдельно
dscoma
0 / 0 / 0
Регистрация: 04.01.2012
Сообщений: 9

Проектирование интерфейса: передача результата по цепочке - C++

06.01.2012, 14:38. Просмотров 390. Ответов 3
Метки (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
// Main.h
class Main () {
      public : 
           Main() {}
           ~Main() {}
 
           vector<int> set(vector<int> &vec);
 
           vector<int> get() {
                 //
           }
};
Следущие классы находятся в разных файлах и содержат набор методов,
которые обрабатывают Main.get() и возвращают его модифицированную версию

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
// A.h
class A () {
    // результат этого класса: добавить в Main.get() несколько элементов
};
 
// B.h
class B () {
    // результат этого класса: удалить из Main.get() несколько элементов
};
 
//... и т.д. 
 
int main () {
    Main *init;
 
    vector<int> set;
 
    init->set(set);
 
    // результатом будет последняя модификация вектора в классе B 
    vector<int> get = init->get();
 
}
Таких классов, которые работают с Main.get() много, и все они должны возвращать его модифицированную версию.
Разбиение на классы, не случайно, т.к. все они содержат очень большой набор специфичеких методов.


Не знаю насколько хорошо объяснил, но суть вопроса в том как спроектировать интерфейс, в котором все классы возвращают модифицированную версию одного и того же объекта (что-то типа кортежей), т.е. результат работы предыдущего класса должен передаваться по цепочке.

Добавлено через 12 минут
Точее не картежей, а декораторов
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru