С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
C++ Дирректории и перемещение по ним https://www.cyberforum.ru/ cpp-beginners/ thread2952231.html
Нужно написать код, который выводит в консоль вначале диск D и внутренние папки и дальше по ним нужно перемещаться с помощью стрелочек и enter и иметь воозможность открывать файлы.Вообще не имею понятия как это делать. Нельзя использовать классы и готовые функции.
C++ Составить программу для ввода набора произвольных чисел, символов и строк и выдачи их на экран
Составить программу для ввода набора произвольных чисел, символов и строк и выдачи их на экран в одной из форм выбранной из таблицы. В формах обозначены: - 999, 777, FFF - целые числа в 10, 8 или 16 с/с соответственно, с указанным минимальным количеством цифр. - 999.999, 999E99 и т.п - вещественные числа в соответствующем формате. - S - одиночный символ. - AAAAA - строка символов указанной...
C++ Правильное разделение пространств имён на файлы Здравствуйте! Подскажите пожалуйста, есть ли какие-то общепринятые правила разбиения на файлы классов и глобальных функций, созданных своём пространстве имен? Конкретно, к моей ситуации: Есть пространство имён mynamespace, в нём написан класс MyClass и глобальная функция MyFunc, которая возвращает переменную (объект) типа MyClass . Самым простым решением этого вопроса я вижу создать... https://www.cyberforum.ru/ cpp-beginners/ thread2952224.html C++ При наборе элемента строчного массива, должен выводиться следующий за ним элемент https://www.cyberforum.ru/ cpp-beginners/ thread2952219.html
При наборе элемента строчного массива, должен выводиться следующий за ним(по порядковому номеру) элемент.
Разработать программу с использованием наследования классов, реализующую классы: точка; линия; круг C++
Разработать программу с использованием наследования классов, реализующую классы: точка; линия; круг. Используя виртуальные функции, не зная с объектом какого класса вы работаете, выведите на экран координаты и размер.
C++ Как инициализировать константную переменную в классе? Есть класс. class ASS{public: const char wer; ASS(); ~ASS(){}; }ASS_; Внутри него есть переменная wer. Мне нужно инициализировать её значением из другой переменной. Далее я хочу вызвать деструктор чтобы создать объект заново и переинициализировать переменную wer, получиться ли такое сделать на стэке? Пробую обратиться к переменной wer в том виде в котором она есть получаю https://www.cyberforum.ru/ cpp-beginners/ thread2952202.html
C++ std не содержит back_inserter Здравствуйте. Я обычно не пишу на плюсах, но тут потребовалось внести коррективы в проект 15 летней давности, который был создан ещё в 2005ой VS. Проект открылся, пришлось ему руками указывать некоторые директории, но вроде всё норм, кроме такого момента: есть строка std::back_inserter(*что-то там*) и ошибка на ней: Error: namespace "std" has no member "back_inserter" Ггул мне сообщает, что... https://www.cyberforum.ru/ cpp-beginners/ thread2952190.html Удаление элементов динамического массива C++
Доброго времени суток! При разработке класса столкнулся с проблемой - "не работает" delete для динамического массива. Перечитал кучу тем на форуме, вроде все делаю правильно. Исходный код: template<class T> class cSet { unsigned int size; T *base; public: cSet(int Number = 0) { //конструктор инициализации base = new T;
C++ Определить как расположена точка относительно треугольника https://www.cyberforum.ru/ cpp-beginners/ thread2952167.html
Задан треугольник своими вершинами (x1,y1) , (x2,y2) , (x3,y3) и точка (x0,y0). Определить как расположены они друг относительно друга: точка внутри треугольника, точка на сторонах треугольника, точка вне треугольника. Находил уже тему с этой задачей но так и не разобрался с условием когда точка находится на сторонах треугольника. #include <iostream> #include <cmath> using namespace std;...
C++ Многопоточность в одну функцию https://www.cyberforum.ru/ cpp-beginners/ thread2952163.html
Добрый день! Есть вопрос, как избавиться от нескольких функций, сделав всё в одной и сохранить мнопоточность? Программа считает нули, отрицательные и положительные числа. Код: #include <iostream> #include <conio.h> #include <cstdlib> #include <ctime> #include <thread> #include <chrono>
C++ Составьте программу определения корней квадратного уравнения
Составьте программу определения корней квадратного уравнения, имеющего решения
C++ Определить количество положительных элементов в столбцах матрицы текст задания: Написать программу, которая по заданным пользователем размерам создаёт двумерный динамический массив. После заполнения элементов двумерного массива необходимо создать, заполнить и вывести на экран одномерный динамический массив, элементами которого являются количество положительных элементов в столбцах двумерного массива. В промежуточных вычислениях переменная для хранения... https://www.cyberforum.ru/ cpp-beginners/ thread2952110.html <
6 / 5 / 1
Регистрация: 05.10.2020
Сообщений: 122
28.02.2022, 16:33  [ТС] 0

Как избежать дублирования кода при написании константного и не константного метода? - C++ - Ответ 16098819

28.02.2022, 16:33. Показов 2427. Ответов 36
Метки (Все метки)

Ответ

Есть неконстантный объект класса Buffer. Я для него вызываю метод forBounds, который имеет в себе след. строчку->
C++
1
return forBounds
то есть я из не константного метода вызываю опять не константный и оттуда stack overflow. Дабы это избежать можно явно указать, что я буду вызвать этот метод для const this. Для этого я делаю std::as_const, но тогда смысла от неконстантного метода нет, потому что я все равно вызову константный метод и не смогу изменить состояния объекта.

Добавлено через 1 минуту
John Prick, константный метод не должен ничего изменять, он принимает лямбду. Если метод константный, то лямбда не сможет ничего изменить и будет ошибка.

Вернуться к обсуждению:
Как избежать дублирования кода при написании константного и не константного метода? C++
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.02.2022, 16:33
Готовые ответы и решения:

Возврат константного значение из функции/метода
Здравствуйте подскажите пожалуйста как из функции или метода вернуть константное значение? что бы...

Выполнение метода в зависимости от константного свойства
class Z { private: const int num; public: Z(int val): num(val){} template&lt;int...

Как избежать дублирования кода при использовании virtual функций?
Здравствуйте. Есть Класс Студент_А и Студент_Б. В каждом есть поле private содержащее string name....

Избежать дублирования проверок при выполнении метода
Предположим, у банка есть метод который осуществляет перевод денег со счета на счет. В нем есть...

36
28.02.2022, 16:33
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.02.2022, 16:33
Помогаю со студенческими работами здесь

Как избежать дублирования кода?
Приветствую Вас уважаемые форумчане! Хочу обратиться к Вам за помощью. Возникли огромные пробелы...

Как избежать дублирования кода в Си
Допустим, есть такие структуры данных: enum Color{ Red, Blue, Black, White };...

Как избежать дублирования кода? Наследование
Здравствуйте. У меня следующая проблема: Есть несколько классов: A, B, C. Они наследуются от...

Ошибка при выводе константного значения С++
Всем привет! Столкнулся с проблемкой, выводит вот такую ошибку. Ошибка C2679 бинарный &quot;&lt;&lt;&quot;: не...

Ошибка при обращении к методу константного объекта
Есть некий класс, в нем есть метод const size_t Length(); пишу оператор сложения Class&amp; operator...

Усечение константного значения при присвоении значений объектам структуры
Здравствуйте! Есть вот такой код: #include &lt;iostream&gt; using namespace std; struct date {...

Избежать дублирования кода
Доброго времени суток, имеется метод записи данных. Записываю из Dictionary, проблема в том, что...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru