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

Динамический массив (классов) - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Динамическая строка и перегрузка операций http://www.cyberforum.ru/cpp-beginners/thread445947.html
Всем доброго дня!!!Если есть минутка, помогите сделать эти задания!буду очень благодарен!! Вот сама задача!!!! 1. Длина L четная, то выделяется подстрока со второго пробела.
C++ Создать класс, для работы с динамическими векторами Создать класс, для работы с динамическими векторами, длины n. В класс реализовать операцию вычитания векторов ввода и вывода в поток. Проверить работу соответствующих операций. http://www.cyberforum.ru/cpp-beginners/thread445943.html
C++ Задача на функции
Помогите разобраться с задачей. Задание. Описать процедуру Minmax (A, B), записывающую в переменную А минимальное из значений А и В, а в переменную В - максимальное из этих значений (А и В - вещественные параметры, являющиеся одновременно входными и выходными). Использую четыре вызова этой процедуры, найти минимальное и максимальное из чисел А, B, C, D. Я понимаю, что написанная мной...
Отлов нескольких одновременно нажатых клавиш C++
Всем доброго времени суток. Подскажите как одновременно отловить несколько клавиш, попробовал это проделать с ctrl + shift и правой + левой кнопками мыши, получилось конечно, но не очень корректно работает. Подскажите где ошибся int key; TCHAR str; key=wParam; switch(msg) {
C++ нужно перевести математическую формулу у формулу нва с++ http://www.cyberforum.ru/cpp-beginners/thread445881.html
http://i070.***********/1202/4b/d6d4496e5067t.jpg
C++ класс - прямоугольник Нужно найти площадь и периметр прямоугольника.... вот написала код...но он не работает...подскажите пожалуйста что делать??? #include <iostream> using namespace std; float PloshchaPryamokytnuka(float a,float b); float PerumetrPryamokytnuka(float a,float b); class Round { public: подробнее

Показать сообщение отдельно
Alexpm
3 / 3 / 0
Регистрация: 06.09.2011
Сообщений: 47
14.02.2012, 11:09     Динамический массив (классов)
Вот такой вопрос, почему так?

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
54
55
56
#include <iostream>
#include <string>
using namespace std;
 
class primer
{
public:
    primer (int _number, char _s1[])
    {
        number=_number;
        strcpy(s1, _s1);
    }
    primer()
    {
    }
    primer input(int number)
    {
        char s1[10];
        cout<<"Пример:"<<" ";
        cin.sync();
        cin.getline(s1, sizeof(s1), '\n');
        cin.sync();
        primer tmp(number, s1);
        return tmp;
    }
    void output()
    {
        cout<<number<<" "<<s1<<endl;
    }
    private:
    int number;
    char s1[10];
};
 
int dobavl(primer *mass, int n)
{
    cout<<"Сколько?"<<" "; cin>>n;
    mass=(primer*) realloc (mass, (n*sizeof(primer)));  
    for (int i=0, number=1; i<n; i++, number++)
    {
        mass[i]=mass[i].input(number);
    }
        for (int i=0; i<n; i++)
    {
        mass[i].output();
    }
    return n;
};
 
void main()
{
    setlocale(LC_ALL,"Russian");
    primer *mass=(primer*) malloc(sizeof(primer));
    int n=0;
    n=dobavl(mass, n);
}
[IMG]http://s017.***********/i411/1202/ee/9772e65b3338t.jpg[/IMG]
==============================================================
А если вывод на экран делать из отдельной функции:
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
54
55
56
57
58
59
60
61
#include <iostream>
#include <string>
using namespace std;
 
class primer
{
public:
    primer (int _number, char _s1[])
    {
        number=_number;
        strcpy(s1, _s1);
    }
    primer()
    {
    }
    primer input(int number)
    {
        char s1[10];
        cout<<"Пример:"<<" ";
        cin.sync();
        cin.getline(s1, sizeof(s1), '\n');
        cin.sync();
        primer tmp(number, s1);
        return tmp;
    }
    void output()
    {
        cout<<number<<" "<<s1<<endl;
    }
    private:
    int number;
    char s1[10];
};
 
int dobavl(primer *mass, int n)
{
    cout<<"Сколько?"<<" "; cin>>n;
    mass=(primer*) realloc (mass, (n*sizeof(primer)));  
    for (int i=0, number=1; i<n; i++, number++)
    {
        mass[i]=mass[i].input(number);
    }
    return n;
};
 
void vivod(primer mass[], int n)
{   
    for (int i=0; i<n; i++)
    {
        mass[i].output();
    }
};
 
void main()
{
    setlocale(LC_ALL,"Russian");
    primer *mass=(primer*) malloc(sizeof(primer));
    int n=0;
    n=dobavl(mass, n);
    vivod(mass, n);
}
То так:
[IMG]http://s018.***********/i519/1202/bd/180d47cabe98t.jpg[/IMG]

Как сделать правильно, чтоб работало во втором случае?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 07:52. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru