|
1186 / 543 / 78
Регистрация: 01.07.2009
Сообщений: 3,517
|
||||||||||||||||
Перегрузка оператора +=27.09.2011, 12:03. Показов 3675. Ответов 33
Метки нет (Все метки)
Есть два класса: Vec4(вектор из 4х float) и Mat4(вектор из 4х Vec4). Проблема в том что при перегрузке в Mat4 операции += я получаю ошибку компиляции
0
|
||||||||||||||||
| 27.09.2011, 12:03 | |
|
Ответы с готовыми решениями:
33
Перегрузка оператора ~ Перегрузка оператора + Перегрузка оператора *= |
|
1186 / 543 / 78
Регистрация: 01.07.2009
Сообщений: 3,517
|
|||||||
| 27.09.2011, 19:14 [ТС] | |||||||
|
Deviaphan, здесь это да, не выспался наверное и потому голова не работала, сейчас исправил то что не выспался и теперь можно со свежей головой воевать с кодом. Сосбветнно в main теперь всё компилируется, теперь это когда
Сейчас попробую вернуться назад к моему классу Mat4 и к вызову оттудова +=, что-то мне подсказывает что оно опять не получиться ...
0
|
|||||||
|
Делаю внезапно и красиво
1313 / 1228 / 72
Регистрация: 22.03.2011
Сообщений: 3,744
|
|
| 27.09.2011, 19:18 | |
|
Когда я удалил лишние методы и std::right поправил, у меня всё норм заработало. Из твоего архива код который.
0
|
|
|
1186 / 543 / 78
Регистрация: 01.07.2009
Сообщений: 3,517
|
||||||||||||||||
| 27.09.2011, 19:25 [ТС] | ||||||||||||||||
|
Ну вот, опять та же ошибка, не блин. Вот не понимаю чего так.
Вот кусочек Mat4:
Vec4 a+=Vec4 b; так почему же оно тогда не работает я не могу понять, когда из main всё удачно вызывается + я дописал функцию в Mat4 вида
0
|
||||||||||||||||
|
Делаю внезапно и красиво
1313 / 1228 / 72
Регистрация: 22.03.2011
Сообщений: 3,744
|
|
| 27.09.2011, 19:27 | |
|
У тебя там using namespace std; выше нету? Замени right на другое имя.
И сперва, удали первый Vec4 operator[](int i)
0
|
|
|
1186 / 543 / 78
Регистрация: 01.07.2009
Сообщений: 3,517
|
|||||||||||
| 27.09.2011, 19:33 [ТС] | |||||||||||
|
+ если перенести мои элементы в public чтобы получилось в функции обращение к вектору
![]() В прикреплённом файле на всякий случай креплю все 3 файла. Собственно ошибка всё та же что и в начале темы...
0
|
|||||||||||
|
1186 / 543 / 78
Регистрация: 01.07.2009
Сообщений: 3,517
|
|
| 27.09.2011, 19:38 [ТС] | |
|
0
|
|
|
Делаю внезапно и красиво
1313 / 1228 / 72
Регистрация: 22.03.2011
Сообщений: 3,744
|
||||||
| 27.09.2011, 19:43 | ||||||
1
|
||||||
|
1186 / 543 / 78
Регистрация: 01.07.2009
Сообщений: 3,517
|
||||||||||||||||||||||||||||||||
| 27.09.2011, 21:10 [ТС] | ||||||||||||||||||||||||||||||||
Ну а для тех кому не хочется качать вот код: main.cpp
0
|
||||||||||||||||||||||||||||||||
|
1186 / 543 / 78
Регистрация: 01.07.2009
Сообщений: 3,517
|
||||||
| 27.09.2011, 22:19 [ТС] | ||||||
|
Если убрать const в списке аргументов перегрузки += в Vec4.h то ошибку будет выдавать такую же как выдавало раньше, я её уже приводил на пред. страницах.
Очень хотелось бы разобраться с примером, тут уж дело принципа чтоли. Добавлено через 1 час 6 минут Также вопрос на засыпку, если в классе перегружена операция [], то как через this в функции класса ею воспользоваться? Я бы хотел написать что-то типа:
0
|
||||||
|
Делаю внезапно и красиво
1313 / 1228 / 72
Регистрация: 22.03.2011
Сообщений: 3,744
|
|||||||
| 28.09.2011, 08:53 | |||||||
|
Обращение к матрице я сам в мэйн добавил. Как только к компу доступ получу, сделаю тебе исправленную версию.
Добавлено через 45 минут Вот если так матрицу написать, то работает.
Добавлено через 1 минуту this->operator[](i)
1
|
|||||||
|
1186 / 543 / 78
Регистрация: 01.07.2009
Сообщений: 3,517
|
|||
| 28.09.2011, 09:43 [ТС] | |||
|
0
|
|||
|
Делаю внезапно и красиво
1313 / 1228 / 72
Регистрация: 22.03.2011
Сообщений: 3,744
|
|
| 28.09.2011, 09:54 | |
|
Константный метод не может возвращать неконстантную ссылку. Почему компилятор непонятно объясняет... а без понятия. Возможно, если какая-то из перегруженных функций реализована с ошибкой, то проверка падает не при синтаксическом анализе функции, а при разрешении перегрузки. В общем, все претензии к майкрософту.)
0
|
|
|
1186 / 543 / 78
Регистрация: 01.07.2009
Сообщений: 3,517
|
|
| 28.09.2011, 10:16 [ТС] | |
|
0
|
|
|
Делаю внезапно и красиво
1313 / 1228 / 72
Регистрация: 22.03.2011
Сообщений: 3,744
|
|
| 28.09.2011, 10:20 | |
|
Тогда, нужно писать правильно и компиляторы не будут в смятении.)
0
|
|
| 28.09.2011, 10:20 | |
|
Перегрузка оператора Перегрузка оператора != Перегрузка оператора > перегрузка оператора () Перегрузка оператора *= Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Эксперимент с картинкой-обложкой на CodinGame
Adler 10.07.2026
Решил на днях провести эксперимент. У меня есть аккаунт на CodinGame, ТОП-3 по РФ среди 2200 участников (в разделе соревнования по программированию ИИ-ботов). Там есть обложка, куда можно влепить. . .
|
После бана на Пикабу не работает авторизация аккаунта с Яндекса.
Hrethgir 09.07.2026
В частности https:/ / auto. ru/ logbook/ zapret-na-vozhdenie-posle-65-let_1cf28789-07b4-4c75-a2f7-4cd4edf9deeb тут хотел оставить комментарий такой
Зрите в корень - монополизация на разработку программ. . .
|
GitDOS: Когда я решил скрестить MS-DOS, GitHub и Claude
MaGz GoLd 08.07.2026
Привет, Киберфорум! Хочу поделиться своим проектом, который, надеюсь, вас заинтересует. GitDOS — это веб-приложение, которое позволяет запускать DOS в браузере с тремя крутыми фичами: диски живут в. . .
|
Учебный мини "цифровой двойник" = (Сервер = Java + Flask_питон )+(3D = Гугловскаая 4T nvideo + google colab) +( WMS = Odoo на Docker)
anaschu 07.07.2026
Увидел в требованиях к вакансии создателя имитационных моделей связку (REst + Api + WMS + Anylogic + питон + 3D Nvideo), и решил посмотреть, что это такое. Из этого всего я работал более менее. . .
|
|
Море в объективе
kumehtar 06.07.2026
Хотел написать много проникновенных слов, но передумал.
Оно само - говорит.
Кто слышит тот слышит.
|
Doom для терминала без стрельбы и монстров. 3D Raycasting на ascii.
dcc0 05.07.2026
Попросил нейронную сеть deepai. org написать рейкастинг 3D с библиотекой ncurses для Linux. Чтобы можно было
ходить на стрелочки. Чтобы стены были отрисованы символами. Справилась.
Первый вариант. . .
|
Установка статуса документа по условию
Maks 05.07.2026
Алгоритм из решения ниже реализован на нетиповом документе "НарядПутевка" разработанного в КА2.
Задача: в табличной части "Материалы" документа при записи автоматически устанавливать статус. . .
|
Сезонность и суточность закисления почв
anaschu 04.07.2026
200 часов это все равно моловато. Есть ситуации, но нестандартные, когда смена происходит за 5 лет.
Но обычно это 50 лет и более.
Наверное, закисление почвы происходит сезонно в средней. . .
|