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

Структуры (Что-то вроде базы данных по бытовой технике) - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Вычислить сумму и количество элементов массива принадлежащих отрезку [0,1] http://www.cyberforum.ru/cpp-beginners/thread749730.html
помогите с решением пожалуйста:-[
C++ Довольно сложная задачка (как можно добыть функцию?) Вопрос заключается в следующем: как можно добыть функцию? Допустим есть он-лайн игра (многим известная, Point Blank), мне надо порыскать в клиенте, и поискать функции... С чего начинать и чем рыть? Вот к примеру код функции (вставляемый в заголовочный файл *.h), он же как-то и кем-то был изначально найден вручную. Мне нужно узнать, как искать подобного рода функции? P.s. это... http://www.cyberforum.ru/cpp-beginners/thread749727.html
C++ Наследование через превосходство. Как исправить?
Схема классов на изображении снизу. При данной иерархии компилятор выдает предупреждение: "Client: наследуется "Human::Human::funk1" через превосходство". И собственно вопрос: как это исправить? class IData { public: virtual ~IData() = 0 {} }; class IHuman: virtual public IData { public:
C++ Сложение дат
Вообщем при складывании дат имеется кусочек: day=day+d1; while (month==1 && day>31 || month==3 && day>31 || month==5 && day>31 || month==7 && day>31 || month==8 && day>31 || month==10 && day>31 || month==12 && day>31 ) { month=month+1; day=day-31; while (month>12) { year=year+1;
C++ Загвоздка в значении переменной http://www.cyberforum.ru/cpp-beginners/thread749661.html
int i = 5; i = ++i + ++i; Чему будет равно i? Помню, в Страуструпе что-то похожее было, но не вспомню.
C++ Однонаправленный список (сохраняет только первый и последний элемент) class Lancuch { public: char cos; Lancuch * nastepny; }; Lancuch ** elem; подробнее

Показать сообщение отдельно
UserAK
70 / 70 / 4
Регистрация: 25.12.2012
Сообщений: 189
Записей в блоге: 2
29.12.2012, 23:31     Структуры (Что-то вроде базы данных по бытовой технике)
вот решил немного прокомментировать
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
struct strcut_household_technician //определение пользовательского типа данных
{
    //определения членов структуры
    char manufacturer[10], color[10];
    float weight, heigth, cost, voltage;
    int warranty;
    
    union { // объединение - переменные, определённые в пределах объединения, будут храниться в одном блоке памяти
            // и как бы накладываться друг на друга
        
        struct struct_TV {      // определение пользовательского типа данных в пределах strcut_household_technician
            int fps;
            float diagonal;
            char type[10];
        } TV;   // TV это определение переменной-члена структуры strcut_household_technician типа struct_TV
                // в программе это имя будет доступно через селектор членов класса .(точка) или ->(стрелка)
        struct struct_mw_oven { // то же самое 
            float size, frequency;
            char control_panel_type[50];
        } mv_oven;
        struct vacuum_cleaner { // то же самое
            char cleaner_type[50];
            int suction;
            float length_of_cord, length_of_hose;
        } vacuum_cleaner;
        struct refrigerator { // то же самое
            int number_of_freezers, number_of_motors;
            float size;
        } refrigerator;
    };
};
 
void main()
{
    // создаём переменную типа strcut_household_technician на стеке
    strcut_household_technician hht;
    // обращаемся к её полям с помощью точки
    hht.weight = 5;
    hht.TV.diagonal = 21;
 
    // или создаём переменную в динамической памяти 
    // оператор new - выделяет блок памяти, достаточный для хранения нашей структуры,
    // и возвращает в переменную ptrhht указатель на него)
    strcut_household_technician *ptrhht = new strcut_household_technician();
    // обращаемся к её полям уже через стрелку
    ptrhht->weight = 5;
    // а к полю "вложенной" структуры через точку
    ptrhht->TV.diagonal = 21;
 
    //переменные для которых память была выделена с помощью оператора new,
    //если они больше не нужны, надо удалять и освобождать память
    delete ptrhht;
}
 
Текущее время: 01:28. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru