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

Конструктор копирования - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Подскажите Задача (Массивы) http://www.cyberforum.ru/cpp-beginners/thread1018992.html
Задать массив из 50 целых четырёхзначных чисел с помощью датчика случайных чисел. Вывести на экран повторяющиеся элементы их индексы и число их повторов. На экран вывести как исходный массив, так и...
C++ Составить файл об информаций студентов в группе. Найти самый высокий и самый низкий уровень успеваемости студентов в группе блииин ничего непонела !!на языки С нужно написать программу на тему ввод и ввывод файловых возможности! задание - нужно составить файл об информаций студентов в группе ! самый высокий и самый... http://www.cyberforum.ru/cpp-beginners/thread1018984.html
Нарисовать графы C++
Всем привет. Ребят, очень нуждаюсь в помощи по задачке. Задали, а я что-то никак не могу сообразить, как такое можно провернуть. Наметки есть, но как прикрутить к этому графику... В общем:...
C++ найти длину слова
Создать символьный файл f. Найти и вывести самое длинное слово, и подсчитать в нем количество букв. Если их несколько, то вывести все слова. Не получается вывести не сколько слов. #include...
C++ ifstream записать число из файла http://www.cyberforum.ru/cpp-beginners/thread1018962.html
Всем здрасьте. У меня вопросом по чтению файлов. Допустим есть у меня файл и я хочу записать содержимое , например это будет число. Код я приводил условно , ошибками пренебречь : #include...
C++ Curl опция переменной Собственно передача опции курлу выглядит незамысловато: curl_easy_setopt(CURL *handle, CURLoption option, parameter); Необходимо задать "option" переменной. Т.е. я не знаю заранее какой будет... подробнее

Показать сообщение отдельно
LeeZa
0 / 0 / 0
Регистрация: 30.09.2013
Сообщений: 43

Конструктор копирования - C++

25.11.2013, 22:21. Просмотров 244. Ответов 1
Метки (Все метки)

Ребята!! Вроде все получается, да только вот сделала конструктор копирования (А он мне, правда, нужен!) - и бух! программа ругается на объявление параметра (Matrix t). Почему-у? о_О!
Помогите, пожалуиста, разобраться.



#include <conio.h>
#include <stdlib.h>
#include <iostream>
#include <math.h>
using namespace std;

class Matrix { public:
int i, j, N, M;
int Mat[100][100];

Matrix() // Конструктор ввода матриц
{cout << "Vvedite razmer matrix=> Kol-vo strok: " ;
cin >> N;
cout << "Vvedite razmer matrix=> Kol-vo stolbtsov: " ;
cin >> M;

for (i=0; i < N; i++)
{
for (j=0; j < M; j++)
{
cout << "M["<< i <<"]["<< j <<"]=" ;
cin >> Mat[i][j];
}
}
}

Matrix( Matrix t)
{
N= t.N;
M= t.N;
for ( i=0; i<N; i++)
{for (j=0; j<M; j++)
Mat[i][j]= t.Mat[i][j];
}
}

Matrix( Matrix mat1, Matrix mat2) // Конструктор с 2 параметрами
{
N=mat1.N;
M=mat1.M;
}

void ShowMatrix()
{
for (i=0; i<N; i++)
{
for (j=0; j<M; j++)
{
cout << " M["<< i <<"]["<< j <<"] = " << Mat[i][j] ;
} cout << "\n";
}
}

Matrix Matrix::operator+(const Matrix &rhs) // +
{
Matrix result(*this);
for (size_t i = 0; i < N; i++)
{
for (size_t j = 0; j < M; j++)
{
result.Mat[i][j] += rhs.Mat[i][j];
}
}
return result;
}

Matrix Matrix::operator-(const Matrix &rhs) // -
{
Matrix result(*this);

for (size_t i = 0; i < N; ++i)
{
for (size_t j = 0; j < M; ++j)
result.Mat[i][j] -= rhs.Mat[i][j];
}

return result;}

Matrix Matrix::operator += (const Matrix &rhs) // +=
{
for (size_t i = 0; i < N; ++i)
{
for (size_t j = 0; j < M; ++j)
Mat[i][j] += rhs.Mat[i][j];
}

return *this;}

Matrix Matrix::operator -= (const Matrix &rhs) // -=
{
for (size_t i = 0; i < N; ++i)
{
for (size_t j = 0; j < M; ++j)
Mat[i][j] -= rhs.Mat[i][j];
}

return *this;}

//-----------------------------------
Matrix *create(int a)
{Matrix *x;
x=new Matrix[a];
return x;
}
//-----------------------------------

};


void main ()
{
Matrix m, m2, m3(m), slojenie(m,m2), vichitanie(m,m2);

cout << "\n 1 Matrix: \n"; m.ShowMatrix();
cout << "\n 2 Matrix: \n"; m2.ShowMatrix();
slojenie = m + m2;
cout << "\n SLOJENIE: \n"; slojenie.ShowMatrix();
vichitanie = m - m2;
cout << "\n VICHITANIE: \n"; vichitanie.ShowMatrix();
m3.ShowMatrix();

getch();
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru