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

Помощь в архитектуре - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Выводит "мусор" при считывании файла http://www.cyberforum.ru/cpp-beginners/thread958679.html
Вывод // (c) vladyxa13 #include <iostream> #include <conio.h> #include <locale> #include <fstream> using namespace std; int main (){
C++ Задачка про Коня и Короля Задана шахматная доска, на которой расставлены черные и белые фигуры, в том числе белый король и черный конь. Определить, может ли белый конь за три хода сбить черного короля. Если да, вывести последовательность ходов на экран. Сделать ф-цию нужно рекурсивно.. получалось проверить может ли конь сбить короля за 1 ход, рекурсию все еще не понял как тут использовать, новая ф-ция с ней не... http://www.cyberforum.ru/cpp-beginners/thread958641.html
C++ visual studio 2010 и LibC.lib
есть ли возможность прикрутить её (мне нужна именно одно поточная) из VC 6.0
Что значит (type*)var? C++
К примеру, (int*)ololo? Оригинальная строка, вызвавшая вопрос: dheader_t * header = (dheader_t*)bsp_r;
C++ задача на структуры http://www.cyberforum.ru/cpp-beginners/thread958560.html
1.сформировать массив из элементов структурного типа. 2.распечатать сформированный массив на экране в виде таблицы. Проблема вот в чем, подскажите, как создать эту таблицу?
C++ Переназначить событие клавиши ENTER в консоли Добрый день. У меня есть массив, мне его нужно заполнить числами с клавиатуры. Но этот массив должен заполняться в строчку, а не в столбец. т.е., когда мы вводим число и нажимаем ENTER, то выходит так: 1 2 3 4 5 подробнее

Показать сообщение отдельно
vbloodv
 Аватар для vbloodv
22 / 22 / 0
Регистрация: 15.12.2012
Сообщений: 314
20.09.2013, 18:07     Помощь в архитектуре
Здравствуйте самые больные места у моих приложений, как и у многих начинающих это не код, а архитектура. Какой должна быть архитектура, приведите примеры .h заголовочного файла в спойлире к примеру для класса виджет (можно image, picture) и какие-то нарекания по количеству методов, количеству строк в определении, использованию наследования и т.д.

Для примера:
Кликните здесь для просмотра всего текста

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
#pragma once
#include <Windows.h>
#include <string>
#include <vector>
#include "hge/hge.h"
 
extern HGE * hge;
 
class Picture
{
    std::string name_;
    hgeQuad quad_;
    float x_,y_,w_,h_,zoom_;
public: 
        
             Picture(HTEXTURE texture, float x, float y, float w, float h);
             ~Picture();
        bool IsVisible;
        void SetName(std::string & name);
        void SetPosition(float x, float y);
        void SetSize(float w, float h);
        void SetZoom(float zoom);
        void SwitchView();
        void Draw(); 
        void Delete();
     hgeQuad * GetQuad(); 
    HTEXTURE * GetTexture(); 
};

Кликните здесь для просмотра всего текста

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
#pragma once
#include <Windows.h>
#include <math.h>
#include <list>
#include <algorithm>
#include <deque>
#include "boost/shared_ptr.hpp"
#include "boost/ptr_container/ptr_vector.hpp"
#include "c_Picture.h"
#include "userdata.h"
class Cup:virtual public Picture
{
private:
    bool bPressed,bFocus,bMoved,bMouseLeft,bMouseRight;
    HTEXTURE texture2;
    int iColor;
    point2d pointWay;
    std::list<point2d> Way;
public:
    int iNumber;
    std::string GetId();
    void CheakMouseFocus(float x,float y); 
    void CheakMouseLeftButton(bool event); 
    void CheakMouseRightButton(bool event);
    void PressCup(); 
    void Move();
    void MoveToPoint(float x,float y); 
    bool IsFocus(void); 
    bool IsPressed(void);
    bool IsMoved(void);
    void SetTexture(HTEXTURE texture);
    void SetTexture2(HTEXTURE texture);
    int GetWaySize();
    hgeQuad * GetQuad(); 
};


И такие замечания тоже, приветствуются:
приватные поля лучше: m_field, filed_, _field;
Публичные булевые: IsBooled;
Методы которые используются только внутри класса:
inline и private
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 18:59. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru