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

Гибкая архитектура и порождающие паттерны - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Умножение матриц http://www.cyberforum.ru/cpp-beginners/thread964424.html
Я юзаю Qt, но пишу сюда т.к. он никак не влияет на код (почти) У меня есть две матрицы A и B (размерность обеих 800х800). Чтобы получить матрицу AB я делаю: for(int i = 0; i < 800; i++){ for(int j = 0; j < 800; j++){ for(int m = 0; m < 800; m++){ AB += A*B; } } }
C++ Среднее значение Нужно посчитать среднее значение всех элементов стека. Но результат всегда ноль. Помогите пожалуйста! #include <stdio.h> #include <conio.h> #include <iostream.h> #include<stdlib.h> #include<time.h> #define LEN 100 http://www.cyberforum.ru/cpp-beginners/thread964422.html
C++ Не работает одна программа
Вот программа. Нужно, чтобы она выводила 1. Три числа с длинной строки 6 2. Дви числа с длинной строки 6 и точностью после запятой 3 3. Три символа с длинной строки 5 4. Три строчки с длинной строки 6 и количеством символов в строке 8 #include "stdafx.h" #include <conio.h> #include <stdio.h> using namespace std;
Не получается "чистый ноль" C++
Доброго времени суток. Довольно банальная проблема, но заставила меня сильно попотеть! for(double x = -0.5; x <= 0.5; x += 0.01) { cout << x << endl; } При выводе, когда время доходит до 0, вместо него получается 3.08781е-016. Прошу решить проблему, используя поток вывода cout, и не меняя структуру цикла.
C++ Передача вектора из класса в класс? http://www.cyberforum.ru/cpp-beginners/thread964394.html
Доброго времени суток! У меня возникла проблема в очень простой программе. Я передаю функции из класса board.cpp в класс test.cpp. У меня выдает g++ следующую ошибку: /tmp/cc7v3lIw.o: In function `main': test.cpp:(.text+0x20): undefined reference to `Board::read_grid(int)' test.cpp:(.text+0x5f): undefined reference to `Board::print_grid(std::vector<std::vector<int, std::allocator<int> >,...
C++ Вывод матрицы на экран //* С клавиатуры вводится размерность целочисленной матрицы, затем сама матрица.Найти элементы меньшие среднего арифметического. //* Разрешается при этом использовать только один оператор цикла(кроме цикла ввода матрицы). как написать вывод матрицы на экран после ввода строк и столбца? #include <iostream> #include <windows.h> using namespace std; int main() подробнее

Показать сообщение отдельно
gray_fox
What a waste!
 Аватар для gray_fox
1244 / 1127 / 53
Регистрация: 21.04.2012
Сообщений: 2,350
Завершенные тесты: 3
29.09.2013, 14:43     Гибкая архитектура и порождающие паттерны
Melg, create_filter - обычная фабрика, конструктор по умолчанию. set_property примерно так
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
class FilterInterface {
 
   using property_map = std::map<std::string, boost::any>;
 
public:
   virtual void filter() const = 0;
 
   void set_property(std::string const& id, boost::any const& value) const {
      properties.insert(std::make_pair(id, value));
   }
 
   template<typename T>
   T get_property(std::string const& id) const {
      property_map::const_iterator it = properties.find(id);
      if (it == properties.end()) {
         throw std::out_of_range("no such property");
      }
      return boost::any_cast<T>(it->second);
   }
 
private:
   property_map properties;
};
 
class FileTypeFilter : public FilterInterface {
 
public:
   virtual void filter() const {
      std::string extension = get_property<std::string>("fileExtension");
      // ...
   }
};
Добавлено через 1 час 0 минут

Не по теме:

Кстати, вообще нужно ли подобное? Можно отвязаться от конкретного типа фильтра в коде, но пользователь всё равно ведь должен знать, какой фильтр создать и как его проинициализировать - т.е. тот же тип фильтра по сути.

 
Текущее время: 16:00. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru