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

Непонятная для меня ошибка - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Сиб запись и чтение из файла http://www.cyberforum.ru/cpp-beginners/thread832014.html
Помогите, пожалуйста, нашла уже существующие темы по данному вопросу, но так как не все понятно, интересует именно частные случай. Задание:Записать во внешний файл целое число N. Написать программу, которая считывает это число из файла, вводит с клавиатуры одномерный массив из N элементов, вычисляет разность max и min значения массива и выводит значение в другой файл. Вот написанная мною...
C++ Удалить из списка неупорядоченные подсписки Доброго времени суток! Из списка нужно удалить неупорядоченные подсписки. К примеру, если была последовательность 6 8 2 11 4 9 20 55 должно остаться: 6 8 11 20 55 Помогите пожалуйста реализовать функцию удаления этих элементов. Заранее спасибо! Мой код: #include "iostream" #include <time.h> using namespace std; http://www.cyberforum.ru/cpp-beginners/thread832012.html
C++ перевести с Паскаль
123
Реализовать класс матриц, СРОЧНО! C++
Помогите реализовать класс матриц, очень надо #ifndef MATRIX_H #define MATRIX_H 1 #include <iostream> class Matrix {
C++ Класс friend http://www.cyberforum.ru/cpp-beginners/thread831997.html
Проблемка с доступом через дружественный класс: class Game { friend Player; //тут объявлен класс-друг protected: string name; };
C++ Определите номер квадранта, в котором находится точка с заданными координатами х,у Люди помогите с задачкой, я пишу на паскале а язык С++ я попросту не знаю...))) В долгу не останусь. Все же надеюсь есть люди добрые))) 1 - Определите номер квадранта, в котором находится точка с заданными координатами х,у подробнее

Показать сообщение отдельно
metaluga145
243 / 244 / 20
Регистрация: 08.04.2013
Сообщений: 927

Непонятная для меня ошибка - C++

08.04.2013, 22:33. Просмотров 819. Ответов 27
Метки (Все метки)

Доброго времени суток. Во время выполнения оператора присваивания вылетает ошибка "Access violation", происходит это в месте обращения к элементу массива переменной input (см. код). Если просто посмотреть что находится в массиве, то там вместо чего-то вразумительного находится "CXX0030: Error: expression cannot be evaluated".
Что это может значить?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
class matrix
{
public:
    matrix(int,int);
    ~matrix(void);
    int columns;//кол столбиков
    int rows;//кол строк
    double **mat;//сама матрица
    //double det(void);
    //matrix inverse(void);//нахождение обратной
    matrix transpon(void);
    void transpon_this(void);
    matrix operator=(const matrix &);//оператор присваивания
    matrix operator+(const matrix &);//оператор сложения
    matrix operator-(const matrix &);//оператор вычитания
    matrix operator*(const matrix &);//оператор умножения матриц
    bool operator==(const matrix &);//оператор сравнения
};
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
matrix matrix::operator=(const matrix &input)
{
    for (int i=0; i<rows;++i)
        delete [] mat[i];
    delete [] mat;
 
    rows=input.rows;
    columns=input.columns;
    mat=new double*[rows]; 
    for (int i=0;i<rows;++i)
        mat[i]=new double[columns];
 
    for (int i=0;i<rows;++i)
        for(int j=0;j<columns;++j)
            mat[i][j]=input.mat[i][j];
    return *this;
}
C++
1
2
3
4
5
6
7
8
9
10
11
matrix matrix::operator+(const matrix & rightmatrix)
{
    if ((rows==rightmatrix.rows)&&(columns==rightmatrix.columns))
    {
        matrix temp(rows,columns);
        for (int i=0;i<rows;++i)
            for (int j=0;j<columns;++j)
                temp.mat[i][j]=mat[i][j]+rightmatrix.mat[i][j];
        return temp;
    } else return(matrix(0,0));
}
И как вообще правильно оформлять такие классы по канонам ООП?(если не сложно пример кода или ссылку на верный путь)

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