Не получается использовать перегруженный оператор ==
Конструктор класса Mat, отдельный файл, методы в хэдере
/**
* Создает вектор векторов с числами, т.е. матрицу заполненную нулями 0.
*/
Mat::Mat(int columns, int rows) {
vec.resize(columns, vector<double>(rows));
}
Файл test, перегрузка и использование
void TestExtension::run() {
Mat *testMatrix1 = new Mat(2,4);
Mat *testMatrix2 = new Mat(2,4);
if (testMatrix1 == testMatrix2) {
cout << "true" << endl;
}
}
bool operator==(const Mat &lhs, const Mat &rhs) {
return true;
}
Результат выполнения сравнения всегда false! Более того, мне CLion подсвечивает, что testMatrix1 == testMatrix2 всегда false
Почему у меня не вызывается перегруженный оператор?
Вы в своем тесте указатели на матрицы сравниваете, вместо сравнения самих матриц. Какой же еще вы ожидали результат? Указатели на два разных объекта всегда отличаются, потому и получается false
Виртуальный выделенный сервер (VDS) становится отличным выбором
Каким образом можно выровнять по вертикали контент окна с классом WC_LINK? Флаг SS_CENTER не помогает
Нашёл программу выполняющую условие моей задачиНужно организовать ввод самого числа А и ввод числа n
Как сделать обработку нажатия комбинации клавиш (например ctrl + n), что-бы после этого выполнялось какое-то действие?