Есть класс, для упрощения восприятия я убрал все лишнее.
Вопрос такой, в одном методе надо использовать 2 объекта Demo
чтобы создать третий, но одним из этих двух объектов является объект, метод которого вызывается
class Demo {
public:
// Делаем что-то умное, для упрощения понимания все лишнее удалено
Demo Process(Demo& _Demo) const {
Demo outDemo;
return outDemo;
}
Demo Test(Demo& _Demo) const {
Demo outDemo = Demo();
outDemo.Process(this); // Тут ошибка
outDemo.Process(_Demo);
return outDemo;
}
};
Вызов будет выглядеть так
outDemo.Process(*this);
Но у вас метод Test
является const
. Поэтому внутри него *test
- это const Demo
. Соответственно передать *this
как Demo &
вы не сможете. Вызвать ваш Process
вы сможете только в том случае, если он объявлен как
Demo Process(const Demo& _Demo) const
Я так понимаю, что именно это вам и нужно, но вы просто забыли добавить этот const
.
Если Process
принимает const Demo &
, то правильно так:
Demo Test(Demo& _Demo) const {
Demo outDemo = Demo();
outDemo.Process(*this);
outDemo.Process(_Demo);
return outDemo;
}
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Упростил код, дабы было легче разобраться с проблемойИмеется класс, описанный в mainwindow
Как обратиться к элементам в вызове функции, когда буду проверять, можно ли построить треугольник?
Всем доброго времени суток,отправляю ajax'ом id в таблицу на удаление,беру через инпутВыскакивает функция success,пишет,что все выполненоНО как...