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

Ошибка при обращении к методу константного объекта - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Реализовать метод summa () для вычисление денежной суммы http://www.cyberforum.ru/cpp-beginners/thread1135738.html
Поле first — целое положительное число, номинал купюры; номинал может принимать значения 1, 2, 5, 10, 50, 100, 500. Поле second — целое положительное число, количество купюр данного достоинства. Реализовать метод summa () — вычисление денежной суммы.
C++ Заполнить двумерный массив размером n*n единицами и нулями как на шахматной доске Заполнить двумерный массив размером n*n единицами и нулями таким образом, чтобы единицы размещались так, как размещаются на шахматной доске черные поля, а нули-как белые поля. Левое нижнее поле на шахматной доске всегда черное. http://www.cyberforum.ru/cpp-beginners/thread1135732.html
C++ Дан массив целых чисел. Верно ли, что сумма квадратов элементов массива есть пятизначное число
дан массив целых чисел. Верно ли, что сумма квадратов элементов массива есть пятизначное число.
C++ Составить программу поиска четырёхзначных чисел, которые при делении на 133 дают в остатке 125, а при делении на 134 да
Составить программу поиска четырёхзначных чисел, которые при делении на 133 дают в остатке 125, а при делении на 134 дают в остатке 111.
C++ Определить пересекаются ли две прямые, заданные своими уравнениями на плоскости http://www.cyberforum.ru/cpp-beginners/thread1135722.html
Определить пересекаются ли две прямые, заданными своими уравнениями на плоскости. Если они пересекаются установить координаты точки пересечения.
C++ Линейная задача о круге в треугольнике Требования к программе: - Числовые значения переменных ввести с клавиатуры, вывод напоминания при этом обязательно; - Вывести на экран значения входных данных и окончательные результаты выполнения программы. Условие Вычислить периметр и площади вписанного и описанного кругов правильного треугольника, если известна его сторона. подробнее

Показать сообщение отдельно
DrOffset
6787 / 3998 / 917
Регистрация: 30.01.2014
Сообщений: 6,819
02.04.2014, 19:06     Ошибка при обращении к методу константного объекта
Tulosba, если хочется использовать С#, то надо использовать С#. Пока что подобные вышеизложенной фиче не очень вписываются в идеологию С++.
Без нарушения совместимости с остальным кодом твою идею в С++ не продвинуть. Поэтому на это никто не пойдет.
Цитата Сообщение от Tulosba Посмотреть сообщение
не найдена статическая функция, то используем свободную
Как это поможет отличить функцию static от метода? Если предполагается такой синтаксис:
C++
1
a = b + c;
Способ это обеспечить уже есть - использовать метод. Да, первый параметр в этом случае зарезервирован. Если разрешить static метод для двух аргументов, в которых первый параметр отличного типа, вызывать с тем же синтаксисом, то без пересмотра способа разрешения имен это будет невозможно сделать. Или нужно будет писать что-то вроде этого (что совершенно избыточно):
C++
1
A::operator+("test", a);
Либо так (еще и некрасиво)
C++
1
a.operator+("test", a);
Если разрешать делать static operator, то в любом случае придется придумывать альтернативный способ указания его в коде. И все эти способы добавляют больше проблем, чем решают. Пока что ни один из предложенных тобой вариантов не может быть реализован в современном С++ без значительных потерь. ИМХО, стоит задуматься, отчего функции подобного рода запрещены стандартом.
 
Текущее время: 09:04. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru