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

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

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Подскажите Задача (Массивы) http://www.cyberforum.ru/cpp-beginners/thread1018992.html
Задать массив из 50 целых четырёхзначных чисел с помощью датчика случайных чисел. Вывести на экран повторяющиеся элементы их индексы и число их повторов. На экран вывести как исходный массив, так и результаты обработки массива : Элемент: 57 >> Индексы: 8,19,38 >> Число повторов: 3 Элемент: 12 >> Индексы: 12, 41 >> Число повторов: 2 Не знаю как сделать так что бы элементы не повторялись и...
C++ Составить файл об информаций студентов в группе. Найти самый высокий и самый низкий уровень успеваемости студентов в группе блииин ничего непонела !!на языки С нужно написать программу на тему ввод и ввывод файловых возможности! задание - нужно составить файл об информаций студентов в группе ! самый высокий и самый низкий успеваемости студентов в группе!!!помогите плз!! http://www.cyberforum.ru/cpp-beginners/thread1018984.html
Нарисовать графы C++
Всем привет. Ребят, очень нуждаюсь в помощи по задачке. Задали, а я что-то никак не могу сообразить, как такое можно провернуть. Наметки есть, но как прикрутить к этому графику... В общем: Пользователь вводит с клавиатуры количество вершин графа. (не больше 20) Программа рандомно расставляет их и соединяет, при условии, что ни одно ребро не должно пересекаться с другими (без пересечений...
C++ найти длину слова
Создать символьный файл f. Найти и вывести самое длинное слово, и подсчитать в нем количество букв. Если их несколько, то вывести все слова. Не получается вывести не сколько слов. #include <iostream> #include <cstring> #include <fstream> using namespace std; int main() {setlocale(LC_ALL, ".1251");
C++ ifstream записать число из файла http://www.cyberforum.ru/cpp-beginners/thread1018962.html
Всем здрасьте. У меня вопросом по чтению файлов. Допустим есть у меня файл и я хочу записать содержимое , например это будет число. Код я приводил условно , ошибками пренебречь : #include <fstream> using namespace std; int main() {
C++ Curl опция переменной Собственно передача опции курлу выглядит незамысловато: curl_easy_setopt(CURL *handle, CURLoption option, parameter); Необходимо задать "option" переменной. Т.е. я не знаю заранее какой будет опция и параметр. Но как его задать? Литералы, стринги, чары кушать не хотим, приведение типов тоже не оценило попытки. Что есть тип CURLoption разобраться не получилось. Вроде идет перечисление, но, что... подробнее

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

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

25.11.2013, 22:21. Просмотров 222. Ответов 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();
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 19:14. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru