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

Конструктор копирования матриц, и заполнение лишнего нулями - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Поиск в ширину http://www.cyberforum.ru/cpp-beginners/thread682770.html
Здравствуйте, я ознакомился с поиском в ширину в общем виде, знаю принцип работы, для чего используеться, но задаюсь вопросом об реализации! Допустим нам дан граф, начальная и конечная вершины. Как считать сам граф? Общую картину кода я понял, но меня интерисует полный разбор каждой строки, а то не понятно что за что отвечает. (опускаем объявление, только циклы, особое внимание на строки...
C++ Однонаправленный линейный список 2-мя массивами Добрый день нужна помощь в написании программы на с++. Надо создать однонаправленный линейный список при помощи 2 массивов. 1 массив содержит данные а второй указатели на эти данные. После надо реализовать 4 функции . 1. Вывод списка 2. Сортировка по возрастанию 3. добавление нового элемента после элемента совпадающего с вводимым с клавиатуры номером если таково номера нет то добавлять... http://www.cyberforum.ru/cpp-beginners/thread682761.html
Напечатать матрицу по k элементов в строке C++
Дана целочисленная матрица T(N, L), N<=7, L<=9. Напечатать матрицу по k элементов в строке (2<=k<=6). При этом k<=L. Напечатать также номера строки столбцов. Например при N = 2, L = 5, k = 3 для матрицы 7 7 7 7 7 8 8 8 8 8 печать должна быть такой: 1 2 3 1 7 7 7
C++ инициализация массива char в конструкторе
Вопрос такой. Есть класс simple, в классе есть поле char in. Естественно хочу инициализировать это поле в конструкторе. in={0}, инициализировать соответственно нулем, но что-то не так, что не так?
C++ Не могу скомпилировать unreal engine 3 http://www.cyberforum.ru/cpp-beginners/thread682717.html
Привет, решил попробовать скомпилировать исходники движка unreal engine 3, но после компилирование не знаю куда сохранился exe файл движка :). Исходники могу кинуть, они публичные.
C++ Частичная специализация шаблона Доброго всем времени суток! Помогите разобраться в следующей ситуации. Есть шаблон класса #include <iostream> using namespace std; template<class A, int val> подробнее

Показать сообщение отдельно
denys_l
51 / 51 / 4
Регистрация: 26.09.2011
Сообщений: 186
29.10.2012, 13:52     Конструктор копирования матриц, и заполнение лишнего нулями
Смотри у тебя создается копия объекта Q, он у тебя не присваивается. При передаче объекта в функцию, передается сам объект, не его копия... при выходе из функции этот объект уничтожится и далее он будет недоступен

Добавлено через 15 минут
попробуй этот
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
Matrix Matrix::operator= ( const Matrix &obj ) {
    if ( this == &obj )
        return *this;
    
 
    //если наша матрица меньше , то берем размер размер obj
    //иначе оставляем свой размер
int r = m < obj.m ?  obj.m : m;
    int c = n < obj.n ?  obj.n : n;
 
    //забиваем массив нулями
    for ( int i = 0; i < m; i++ ) {
        for ( int j = 0; j < n; j++) {
                M [ i ] [ j ] = 0;          
        }
    }
    //копируем obj
    for ( int i = 0; i < r; i++ ) {
        for ( int j = 0; j < c; j++) {
                M [ i ] [ j ] = obj.M[r][c];            
        }
    }
    
    return *this;
}
Добавлено через 1 минуту
ну и методы придется добавить, о которых я говорил, т.к. m и n - закрытые данные члены и прямого доступа мы к ним не имеем
 
Текущее время: 01:01. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru