Форум программистов, компьютерный форум, киберфорум
Наши страницы

Архитектура программы. Правильно ли сделал? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Проекты и солюшин http://www.cyberforum.ru/cpp-beginners/thread932406.html
У меня такая проблема: как в солюшине связать два и больше проектов чтоб можно било использовать функцыонал одного проекта в другом. З. Ы. Если просто добавить проекты в солюшын то вызвать функцыи...
C++ Получение командой строки для процесса Компилирую из под x86 всё здорово... запускаю на x64 - не может прочитать строку командную для процесса... Для 64 бит компилировать мне не нужно... нужно как то сделать, чтобы работала,... http://www.cyberforum.ru/cpp-beginners/thread932380.html
вложенный класс C++
Какие проблемы могут возникнуть в следующем объявлении вложенного класса? class Ribs { private: class Sauce { int soy; int sugar; public : Sauce (int s1, int s2) : soy ( s1 ), sugar...
C++ Произвести действия со строкой матрицы
Добрый день. Обращаюсь за помощью, т. к не знаю как правильно сделать в следующем случае: int a= {9,7,3,6,8,0,5,4,1, 2,4,8,3,0,1,6,0,7, 0,0,1,4,9,7,0,0,0, ...
C++ Сортировка std::list http://www.cyberforum.ru/cpp-beginners/thread932352.html
Есть такой фрагмент програми. Создаю функцию для сортировки list. Вроде все правильно. В класе перегружены оператори < i =. Не знаю что делать. List просто не сортируеться а ввыводиться в изначальном...
C++ работа с битами доброй ночи, форумчане, необходима ваша помощь) как и всем тут... вот изучаю с++ и добрался до работы с битами, учу решением задач. на форуме, правда не на этом, нашёл несколько задач: 1. Посчитать... подробнее

Показать сообщение отдельно
loou
1 / 1 / 0
Регистрация: 02.08.2013
Сообщений: 29

Архитектура программы. Правильно ли сделал? - C++

02.08.2013, 10:48. Просмотров 512. Ответов 7
Метки (Все метки)

Собствено с архитектурой вроде определился. Хотелось бы конструктивной критики.

Задача по сути следующая:
- Считывать данные геометрических объектов из файла.
- Вычислить некоторое число для двух геометрических объектов.

Базовый класc для геометрических объектов имеет одну функцию которая возвращает число, плюс конструкторы деструкторы и т.д.

C++
1
2
3
4
5
6
7
8
class сGeomObj {
public:
    ...
    double GetVal();
    
protected:
    ...
};
Это как бы "ядро" никаких проверок корректности данных при создании объекта не произвожу. Важна производительность. Максимально общий, чтобы можно было добавить любые возможные подклассы.

Все проверки в "интерфейсном" классе, он заточен под данную задачу:
(правильно ли называть его интерфейсом?)

C++
1
2
3
4
5
6
7
8
9
10
11
12
class iGeomObjFromFile {
public:
    ...
    int      ReadFromFile(char* f_name);
    double CalcGoalValue(int i, int j);
    
protected:
    list < cGeomObj > gList;
    static cReaderFromFile        Reader;
    static cGoalValueCalculator  Calculator;
    ...
}
Reader - статический объект, используется функцией ReadFromFile, считывает данные из файла и проверяет их корректность, создает объекты сGeomObj.

Calculator - статический объект, используется функцией CalcGoalValue, вычисляет интересующее значение для двух объектов cGeomObj.


Еще вопрос. Если я свой клас сGeomObj сделаю в виде шаблона, я могу задать список допустимых типов для параметра типа?
Я не нашел, но это по моему странно. Если я не хочу чтобы в мой шаблон пихали не понять что, то что же делать?

Еще. Сейчас в cGeomObj используется #define константа, ее лучше сделать параметром шаблона?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.