|
107 / 4 / 1
Регистрация: 04.04.2015
Сообщений: 124
|
||||||
Setter / Getter18.01.2019, 05:33. Показов 2474. Ответов 7
Метки нет (Все метки)
Добрый день. Подскажите как сделать.
Вот пример кода.
В первом я заменяю все координаты, и в консоль выводится YES. потом получаю новые координаты. Во втором заменяю координату только для x, в таком случае YES уже не выводится, и потом получаю новые координаты. и в 1 и 2 случаю, результат будет один - {'x':10,'y':0,'z':0}, но во 2 случае сеттер не срабатывает... как можно сделать чтобы он тоже срабатывал?
1
|
||||||
| 18.01.2019, 05:33 | |
|
Ответы с готовыми решениями:
7
Копирование Getter из одного объекта в другой Getter and setter Getter Setter |
|
6496 / 3907 / 2006
Регистрация: 14.06.2018
Сообщений: 6,781
|
||||||
| 18.01.2019, 08:49 | ||||||
Сообщение было отмечено SkyWeb как решение
Решение
Добрый день.
Если сильно упростить задачу, то можно реакцию поставить просто на каждый сеттер _position. И кстати - JSON-нотацию можно и не использовать.
1
|
||||||
|
107 / 4 / 1
Регистрация: 04.04.2015
Сообщений: 124
|
|
| 18.01.2019, 09:26 [ТС] | |
|
amr-now Спасибо большое, очень помогли. Только тут в одном случае получается position.x а в другом position._x но это я исправил. Всю ночь не мог разобраться, еще раз огромное спасибо.
0
|
|
|
6496 / 3907 / 2006
Регистрация: 14.06.2018
Сообщений: 6,781
|
|
| 18.01.2019, 09:46 | |
|
SkyWeb, position._x можно использовать в обход геттера/сеттера.
0
|
|
|
107 / 4 / 1
Регистрация: 04.04.2015
Сообщений: 124
|
||||||
| 18.01.2019, 09:49 [ТС] | ||||||
|
Ну я сделал как мне нужно )),,.. вот, если конечно тут понятно что я делаю ))
0
|
||||||
|
6496 / 3907 / 2006
Регистрация: 14.06.2018
Сообщений: 6,781
|
|||||||
| 18.01.2019, 14:56 | |||||||
|
SkyWeb, раз уж взялись за классы, используйте современный синтаксис.
var - грязный хак из древней версии JS. Правильно - let.Добавлено через 4 часа 53 минуты Литерал объекта поразительно похож на объявление класса, но присутствуют малозаметные отличия. В литерале объекта можно объявлять свойства-значения, а в объявлении класса принципиально нельзя объявлять свойства-значения вне членов-функций. ![]()
"Приватные поля" именуются с нижнего подчеркивания.
0
|
|||||||
|
107 / 4 / 1
Регистрация: 04.04.2015
Сообщений: 124
|
|
| 18.01.2019, 15:39 [ТС] | |
|
Спасибо.
Переделал на _x:0, _y:0, _z:0, Супер. "Приватные поля" именуются с нижнего подчеркивания. - Это как негласное правило?, правило хорошего тонна? По поводу let, на сколько я помню переменные объявленные через let действуют в рамках {}, то есть за ними он не работает. Переделаю потом. У меня сейчас задача сделать чтобы этот класс наследовал класс где все будет описано про позицию. И потом класс камеры также. А то сейчас тут вношу правки и тоже самое в другом файле где я камеру описывал. Давно уже серьезно за WebGl хотел взяться. Много нового для себя открыл. Многие пишут что зачем велосипед изобретать, уже есть готовые библиотеки (threejs например для работы с webgl), но кто-бы что там не говорил, создавать свой велосипед полезно, интересно да и опыт большой. Жаль что в рунете не так много полезной информации по нативному webgl (по webgl 2.0 так вообще ничего нет), все уперлись в эти готовые движки и куча информации которая не уходит дальше hello world. И английский за одно подтягиваю )))
0
|
|
| 21.01.2019, 23:58 | ||
|
These general lessons are good for start:
0
|
||
| 21.01.2019, 23:58 | |
|
Помогаю со студенческими работами здесь
8
вопрос о getter\setter Auto-generator Of Getter/setter Почитать о Generic и Getter\Setter Добавить корректные getter и setter-методы Объясните назначение Setter, Getter, Deleter Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога
Финальные проекты на Си и на C++:
hello-sdl3-c. zip
hello-sdl3-cpp. zip
Результат:
|
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога
MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
|
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд.
Даже если у вас. . .
|
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает
монорепозиторий в котором находятся все исходники.
При создании нового решения, мы просто добавляем нужные проекты
и имеем. . .
|
|
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение:
В этой книге («Подход, основанный на вариантах использования») Ивар утверждает,
что архитектура программного обеспечения — это
структуры,. . .
|
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога
Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
|
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip
На первой гифке отладочные линии отключены, а на второй включены:. . .
|
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем.
. . .
|