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

Массив указателей на производные классы - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Скомпилировать программу http://www.cyberforum.ru/cpp-beginners/thread601473.html
Пожалуйста скомпилируйте программу #include <cstdlib> #include <iostream> #include <map> #include <string> #include <vector> #include <fstream> #include <iomanip> #include <windows.h>
C++ Не пойму в чем ошибка Дано натуральное число n. Найти наибольшее среди чисел ke^sin^2(k+1) (k=1, …, n), а также сумму этих чисел. #include <iostream> #include <cmath> using namespace std; int main() { http://www.cyberforum.ru/cpp-beginners/thread601461.html
Проверить код на правильность C++
Здравствуйте! Помогите пожалуйста проверить код на правильность,т.к. почему-то не компилируется. Задача: Известно кол-во очков, набранных каждой из 8 команд-участниц первенства по футболу. Ни одна пара команд не набрала одинаковое количество очков. Вывести команды в соответствии с занятыми ими местами в чемпионате. #include <iostream> #include <cstring> using namespace std; struct Comand...
C++ PrintWindow was not declared
Привет, пишу скрипт для снятия скриншота с фонового окна, пробую пользовать PrintWindow, ругается на недекларированую функцию, подключил windows.h, может чего упустил еще?
C++ Блок Схема http://www.cyberforum.ru/cpp-beginners/thread601420.html
Добрый День. Написал курсовую по методу золотого сечения,а вот надо ещё к программе составить 2 блок схемы В 1 Блок схеме(Поиск минимума,всего у меня 9 функций,) должно быть всё то,что есть в подпрограмме ButtonClick1 в коде ниже.Только не разбивать всё в отдельные блок схемы,а просто разъединять соединителями например круглишком и внутри него цифра 1 2 3 4 5 6 7 8 9. Во 2-й Блок...
C++ решение задач с использованием рекурсии Ув Форумчане подскажите пожалуйста либо ресурс где это можно прочитать мне нужно эту тему расписать помогите пожалуйста :) подробнее

Показать сообщение отдельно
numberone
0 / 0 / 0
Регистрация: 09.06.2012
Сообщений: 14
10.06.2012, 15:06  [ТС]     Массив указателей на производные классы
(Не нашел как отредактировать сообщение, поэтому написал новое)

конкретно не понятно как из этого задания выполнять следующие пункты:

После ввода числа создаваемых объектов по пункту меню "Кол-во элементов"
этот пункт запрещается и разрешается пункт "Начальные значения". При этом
на экране появляется окно [1] с количеством пронумерованных строк в соот-
ветствии со значением N, введенным ранее как число создаваемых объектов
каким вообще элементом windows forms пользоваться чтобы это осуществить?

и вот это

Инициализация (или изменение значения и типа) одного или нескольких объектов
производного класса может производиться в любой момент времени после ввода
количества создаваемых значений без изменения значений и типа других ранее
проинициализированых объектов.
Добавлено через 4 часа 34 минуты
Как задать это все через консоль я понял, вроде сделал для консоли все кроме этого пункта

* для конструкторов копирования каждого класса предусмотреть
диагностическую печать количества его ввызовов в заданное место дисплея,
(рекомендуется использовать статические члены класса).
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
int n;
        cout << "Введите колличество элементов-указателей на базовый класс mystring";
        cin >> n;
        mystring **p = new mystring*[n];
        char str[100], type;
        for (int i = 0; i < n; i++) 
        {
            cout << "Выберите производный клас: 'i' - строка идентификатор, 'c' - комплексное число";
            cin >> type;
            cout << "Введите начальное значение";
            cin >> str;
            if (type == 'i') 
            {
                p[i] = new identification(str);
            } 
            else if (type == 'c') 
            {
                p[i] = new complex(str);
            }
        }
        int a, b, c;
        cout << "Выберите операнды для действия";
        cin >> a >> b >> c;
        cout << "Введите тип операндов";
        cin >> type;
        if (type == 'c')
        {
            (*(complex*)p[a]) = (*(complex*)p[b]) + (*(complex*)p[c]);
            (*(complex*)p[b]) = (*(complex*)p[c]);
        }
        else if (type == 'i') 
        {
            (*(identification*)p[a]) = (*(identification*)p[b]) + (*(identification*)p[c]);
            (*(identification*)p[b]) = (*(identification*)p[c]);
            cout << ((*(identification*)p[b]) < (*(identification*)p[c]));
            cout << "Введите символ для поиска в строке";
            cin >> str[0];
            cout << ((identification*)p[a])->find_char(str[0]) << " " << ((identification*)p[b])->find_char(str[0]) << " " << ((identification*)p[c])->find_char(str[0]) << "\n";
        }
        p[a]->show();
        p[b]->show();
        p[c]->show();
        cout << p[a]->get_length() << " " << p[b]->get_length() << " " << p[c]->get_length();
вот все, что получилось
 
Текущее время: 02:21. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru