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

Нужно добавить классы в программу - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Можно ли как-то в дочернем классе получить указатель родителя? http://www.cyberforum.ru/cpp-beginners/thread1143625.html
У меня тут появилась мыслишка :D В любом классе есть так сказать скрытый указатель на самого себя - this, а можно ли как то получить в дочернем классе указатель на родительский класс? P.S.: без всякой явной передачи в конструктор дочернего класса указателя на базовый ... Добавлено через 12 минут ладно, опять же забейте, просто было интересно, есть ли возможность в дочернем классе получить...
C++ Перенос программы в Windows Forms Срочно нужно перенести код консольного приложения в с++ Буду очень признателен. Минимальный интерфейс. 1 текстовое поле для результата. 1 выдвижное меню для выбора тональности. #include <iostream> #include <locale> #include <conio.h> using namespace std; int main() { http://www.cyberforum.ru/cpp-beginners/thread1143620.html
C++ Дана последовательность
Последовательность x1, x2, ... образована по закону (См. картинку) (i=1,2, ...). Дано действительное число e>0. Записать в файл h члены последовательности x1, x2, ..., остановившись после первого члена для которого выполнено |xi|<e
Вычисление высоты дерева C++
Всем привет! Дерево создано на основе стека, но вот в чем беда компилируется с ошибкой error C4703: используется потенциально неинициализированная локальная переменная-указатель "p" Не пойму как исправить не переписывая полностью программу) #include "stdafx.h" #include "stdio.h" #include <locale.h> #include <iostream> using namespace std;
C++ Несколько исходников в проекте http://www.cyberforum.ru/cpp-beginners/thread1143610.html
Возможно ли создание проекта с несколькими исходными файлами и одним, так сказать "головным"? То есть я не хочу всё писать в один файл, а хочу разбросать код по каждому файлу, для упрощения. Если можно, то как потом подключать вспомогательные .cpp файлы в главный файл?
C++ Как привязать цветовые координаты (rgb и hsl) к картинке Подскажите пожалуйста!!! Как привязать цветовые координаты (rgb и hsl) к картинке в c++. подробнее

Показать сообщение отдельно
zss
Модератор
Эксперт С++
 Аватар для zss
5953 / 5558 / 1787
Регистрация: 18.12.2011
Сообщений: 14,204
Завершенные тесты: 1
09.04.2014, 17:24     Нужно добавить классы в программу
Переносите все функции внутрь соответствующего класса, убирая первый параметр
и вместо него используя указатель на текущий класс this (его даже можно опускать).
примерно так:
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
struct Group
{
private:
    char Name[100];
    long salary[1000];
    long aversalary;
    long emploeesNum;
public:
Group(){Name[0]=0;salary[0]=0;aversalary=0;emploeesNum=0;}// Добавляем конструкторы
Group(char *nn,long* ss,long enum)      // Добавляем конструкторы
{
      strcpy(Name,nn);
      for(int i=0;i<1000;i++)
         salary[i]=ss[i];
      aversalary=0;
      emploeesNum=enum;
}
struct Group MaxGroup(size_t Length);
void AverageSalaryOfGroup(size_t Size);
 
};
 
struct Company
{
private:
    char Name[100];
    struct Group groups[GROUPSNUM];
    long aversalary;
    long emploeesNum;
public:
 
void CompaniesInputData(size_t Length);
struct Company MaxCompany(size_t Length);
void AverageSalaryOfCompany();
void EmloeesOfCompany();
void writeDisk(size_t Length);
void ClearCompanies();
void PrintData(size_t Length); 
 
//--------- функция сравнения по количеству работников
friend int cmp_emploeesNum(const void *leftCom, const void *rightCom);
//--------- функция сравнения предприятия по средн оклад
friend int cmp_aversalary(const void *leftCom, const void *rightCom);
// функция сравнения предприятия по группе с максимальным окладом
friend int cmp_maxGroupSalary(const void *leftCom, const void *rightCom);
friend void BubbleSortCompanies(struct Company * companies, size_t Length, int(*compar)(const void*, const void*));
};
 
Текущее время: 15:31. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru