|
14 / 14 / 0
Регистрация: 08.07.2009
Сообщений: 61
|
||||||
Переопределение операторов26.10.2009, 17:53. Показов 2883. Ответов 6
Метки нет (Все метки)
Еще раз об этом интересном вопросе. У меня есть матрицы , условно назовём их тип matrix, есть библиотека, имеющая в своём составе функции операций линейно алгебры, аналогичные обычным, т.е. сложение/вычитание/умножение/деление и т.д. , я бы хотел переопределить стандартные арифметические операторы для этих матриц, т.е.
matrix A,B,C; C = A + B; где
Везде, где я встречал, речь шла о переопределении-перегрузке операторов как функций - членов класса. Возможно ли написать обычные сишные функции для перегрузки операторов или перегрузка - прерогатива ООП и они перегружаются по стандартам С++ как методы класса? Если так, то мне надо сделать класс - обертку для этого? И какая область видимости такой функции? Можете привести пример кода или ссылку?
0
|
||||||
| 26.10.2009, 17:53 | |
|
Ответы с готовыми решениями:
6
Переопределение операторов переопределение операторов |
|
MCSD: APP BUILDER
8795 / 1074 / 104
Регистрация: 17.06.2006
Сообщений: 32,602
|
|
| 26.10.2009, 18:06 | |
|
blackswan,
Возможно ли написать обычные сишные функции для перегрузки операторов невозможно. Если так, то мне надо сделать класс - обертку для этого? class matrix { ... - тут обертки для Си-функций перегрузка оператора сложения friend matrix operator+(const matrix& a, const matrix& b); }; здесь будет собственно тело функции matrix operator+(const matrix& a, const matrix& b) ...
0
|
|
|
14 / 14 / 0
Регистрация: 08.07.2009
Сообщений: 61
|
||||||
| 26.10.2009, 18:13 [ТС] | ||||||
|
вот так?
matrix A,B,C; C = A + B; ? а что случиться с самим истинным классом matrix? Разве этим я его не переопределяю? Кстати, я не уверен, что это класс, возможно это обычный массив.
0
|
||||||
|
MCSD: APP BUILDER
8795 / 1074 / 104
Регистрация: 17.06.2006
Сообщений: 32,602
|
|
| 26.10.2009, 18:22 | |
|
blackswan,
вот так? я не знаю что это за функция add, поэтому не могу сказать должно быть примерно так (cmatrix это структура для Си, в которой объявлена матрица): - временные переменные cmatrix m1, m2; - тут ты каким-либо образом запихиваешь данные из a и b в m1 и m2 - тут будет результат для Си-структуры: cmatrix result; - сложение через Си-функцию matrix_add(&result, &m1, &m2); - преобразование в C++ - класс matrix out(result); return out; а что случиться с самим истинным классом matrix? что такое "истинный" класс? где-то ещё есть не-истинный?
0
|
|
|
14 / 14 / 0
Регистрация: 08.07.2009
Сообщений: 61
|
|
| 26.10.2009, 18:29 [ТС] | |
|
функция add выглядит так matrix add(matrix A,matrix B), она сама возвращает результат через своё имя.
что такое "истинный" класс? где-то ещё есть не-истинный? ну предложенный класс называется matrix, также как и тип моих матриц, возможно matrix - это уже класс, описывающий мои матрицы.
0
|
|
|
14 / 14 / 0
Регистрация: 08.07.2009
Сообщений: 61
|
|
| 28.10.2009, 10:11 [ТС] | |
|
что-то моя тема потерялась среди других, так что насчет моего предыдущего поста?
0
|
|
|
0 / 0 / 0
Регистрация: 21.04.2009
Сообщений: 44
|
|
| 30.11.2009, 13:55 | |
|
А вы бы не могли написать свой код библиотеки!!! Очень нужно!!!
0
|
|
| 30.11.2009, 13:55 | |
|
Помогаю со студенческими работами здесь
7
Переопределение операторов С++
Переопределение операторов и массивы Создать класс строку в С++. Переопределение операторов Возможно ли переопределение операторов для пользовательских типов? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . .
а удачный момент так и не приходит.
|
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица.
Задача: зафиксировать три левых колонки в отчете.
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
/ / . . .
|
Настройки VS Code
Loafer 13.04.2026
{
"cmake. configureOnOpen": false,
"diffEditor. ignoreTrimWhitespace": true,
"editor. guides. bracketPairs": "active",
"extensions. ignoreRecommendations": true,
. . .
|
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2.
Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива.
Было так:. . .
|
|
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача: реализовать контроль корректности заполнения дат назначения. . .
|
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html
Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
|
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
|
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях.
Задача: при копировании документа очищать определенные реквизиты и табличную. . .
|