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

Ошибка при вызове функции добавления нового элемента в массив - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Вычислить значение выражения http://www.cyberforum.ru/cpp-beginners/thread1310016.html
Дано натуральное число N. Вычислить \sum_{N}^{i=1}i!/(N+i)!
C++ Распечатать нечетные числа в порядке убывания из диапазона [5..90] , кратные 3 и не кратные 5 одновременно В С++ распечатать нечетные числа в порядке убывания из диапазона , кратные 3 и не кратные 5 одновременно. http://www.cyberforum.ru/cpp-beginners/thread1310000.html
C++ Вывести на экран все варианты выкидывания двух кубиков
Задали крч задачу суть : вывести на экран все варианты выкидывания двух кубиков 1 1 1 2 ... и так далее ... 6 6 Надо сделать через while и как можно проще. Напишите пожалуйста пример кода такой задачи.
Перегрузка оператора << Нет доступа к член данным! В чем загвоздка? C++
Безумная странная ошибка. Перегрузил оператор вывода потока cout <<. Но в перегрузке ошибка, пишет что член данные недоступны, хотя функция ведь friend. В чем проблема? Ошибка во втором файле в строчке 101 //Stroka.h #pragma once #include <iostream> class Stroka { private: int length; char *str;
C++ Найти долю произведений четных и нечетных цифр четырехзначного числа http://www.cyberforum.ru/cpp-beginners/thread1309975.html
короче, в четырехзначном числе надо четные цифры умножить на четные, потом нечетные на начетные и это между собой разделить. буду очень благодарен) Добавлено через 29 минут спс большое, уже не надо:)
C++ Глюк печатания и глюк порчи константы Дамы и господа! Я столкнулся с двумя глюками, которые не нашёл в списке распространённых ошибок. 1) При попытке распечатать массив (например, for(int k=0; k<20; k++)cout << tp << endl; ), печатается нечто не имеющее отношения к делу. При этом, если печатать по одному элементу (cout << tp << endl; ), получается правильный результат. 2) При использовании константы в арифметическом операторе... подробнее

Показать сообщение отдельно
Zimos
1 / 1 / 0
Регистрация: 12.04.2014
Сообщений: 44
24.11.2014, 23:39     Ошибка при вызове функции добавления нового элемента в массив
Описывается класс Datchik. Затем в классе Lists объявляется массив объектов класса датчик и описывается функция NewDatchik добавления нового элемента(датчика) в этот массив. Программа вылетает при вызове этой функции из int _tmain. Подскажите пожалуйста, в чем ошибка?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
class Datchik
{
    private:
        char *shifr = new char[4]; 
        char *data = (char*)malloc(sizeof(char*));
    public:
        Datchik(char* shifr1, char* data1) // конструктор класса
        {
            shifr =  shifr1;
            data = data1;
        }       
...
}
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
class Lists
{
private:
    Datchik* spisokDatchikov; // объявление массива датчиков
    int nD = 0;
public:
    void NewDatchik(Datchik newD) // добавить новый датчик (новый элемент в массив)
    {
        spisokDatchikov[nD] = newD;
        nD++;
    }
...
}
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
int _tmain(int argc, _TCHAR* argv[])
{
    Lists l;
            char *shifr = new char[4];
            char *data = (char*)malloc(sizeof(char*));
            cout << "Введите шифр датчика: ";
            cin >> shifr;
            cout << "Введите дату выпуска датчика: ";
            cin >> data;
            Datchik d(shifr, data);
            //-----------------------------
            l.NewDatchik(d); // при добавлении этой строки программа вылетает
        }
    }
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 21:00. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru