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

конструктор копии - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Массив массивов или как ? http://www.cyberforum.ru/cpp-beginners/thread18553.html
Не знаю как сделать вот такую веСЧ: Есть 2 списока, например: Список1|Список2 R1..............R2 R8..............R3 R5..............R6 .................... и т.д. (заранее неизвестно сколько таких строк). Это два списка (по столбцам). Так нагляднее.
C++ Бинарное дерево пытаюсь самостоятельно разобраться с этим, но чето не выходит вот мой листинг. вроде кудато чтото вводит, но ничего не выводит. помогите исправить #include<stdio.h> #include<conio.h> #include<iostream.h> #include<string.h> #define N 40 http://www.cyberforum.ru/cpp-beginners/thread18534.html
C++ Рекурсия строки
Объясните пожалусто почему не работает 2 кода . #include <iostream> #include <time.h> using namespace std; int stepen(int a,int b) { if(a==0) return 1; int rez=stepen(a-1,b)*b;
Реализация перегрузки "operator +" для двух объектов C++
С=A+B; Что то не получается в операторе operator+; #include <iostream.h> class MASS { int *num; int n; int size;
C++ Функция для сравнения двух символьных последовательностей http://www.cyberforum.ru/cpp-beginners/thread18488.html
С помощью поинтеров напишите функцию для сравнения двух символьных последовательностей ( без strcmp() ). плиз очень надо!
C++ Программа с мак адресом Написать программу приводящую введенный мак адрес к следующему виду: GG:GG:GG:GG:GG:GG. Где GG это 16 ричное число записанное в верхнем регистре с ведущим нулем. Пример AA:1F:14:10:05:F3. Пользователь может вводить мак адрес маленькими буквами, без разделителей с несколькими разделиткелями и т.д. Пример: “aa 1f 7F 45 12 81”, “aa^ bf^a3 ^ F8 ^ 5C ^4D”, “aabb1fa56790”. #include <stdio.h>... подробнее

Показать сообщение отдельно
Feuer
72 / 72 / 7
Регистрация: 13.10.2008
Сообщений: 144

конструктор копии - C++

15.12.2008, 20:18. Просмотров 1094. Ответов 4
Метки (Все метки)

Здравствуйте. Необходимо было написать небольшую программку, связанную с выполнением определенных операций над матрицами. Я решил сделать класс матриц ну и в него все необходимые функции.. в общем вот часть кода:

class Matrix {
int rang;
double **mBase;
public:
Matrix(int rng) {
rang = rng;
mBase = new double*[rang];
for(int i = 0; i < rang; i++)
mBase[i] = new double[rang];

for(int a = 0; a < rang; a++) {
for(int b = 0; b < rang; b++) {
mBase[a][b] = rand()%9 + 1;
}
}
}

Matrix(const Matrix &o) {
rang = o.rang;
for(int a = 0; a < rang; a++) {
for(int b = 0; b < rang; b++) {
mBase[a][b] = o.mBase[a][b]; // ----------------------------!!!
}
}
}
В конструкторе создается динамический двумерный массив, который и является основой матрицы. В программе предусматривается передача объектов типа Matrix различным функциям и чтобы избежать при этом создания побитовой копии(чтобы временному объекту не были присвоены адреса членов исходного объекта), я решил создать свой конструктор копии и в нем просто скопировать значение всех членов исходного объекта. Но при любой передаче объекта Matrix любой функции программа "накрывается" (обнаружена ошибка и т.д.). Отладка говорит о "Unhandled exception at 0x00411cfe in matrix`s.exe: 0xC0000005: Access violation reading location 0x00000004." при переходе к помеченной мной строке.
Помогите, пожалуйста, я новичок... совсем и в общем... понятия не имею в чем дело...
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 16:03. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru