Библиотеки: JSON - страница 2

 
Sergey Gridnev #:
Не смотрел код библиотеки, но судя по представленному Вами фрагменту, методы setProperty и Add возвращают ссылку на объект (this), поэтому дальше можно снова через точку обратиться к методу класса.  Это позволяет собирать такие цепочки вызовов.

Я понимаю это:

....add().add()

но не встречал, как к конструктору пристёгнут вызов метода. И как это сообразуется с new.

 
Edgar Akhmadeev #:

Я понимаю это:

но не встречал, как к конструктору пристёгнут вызов метода. И как это сообразуется с new.

new возвращает ссылку.
Конструктор не при чём.
 
Sergey Gridnev #:
Конструктор не при чём
Я вижу так
= new JSON::Object().setProperty()

Ладно, похоже в двух словах это не объяснишь, а более тщательно никому неохота.

 
Edgar Akhmadeev #:
Я вижу так

Ладно, похоже в двух словах это не объяснишь, а более тщательно никому неохота.

Посмотрите на это так:
= (new JSON::Object()).setProperty()
 
Sergey Gridnev #:
Посмотрите на это так:
= (new JSON::Object()).setProperty()
Ну да, по результату-то это так, вариантов нет. Но конкретно это правило синтаксиса я не грокаю. Хотя основы ООП знаю. Применяю, кроме самых изысков. Помню и по C++ (40 лет назад). Вообще-то мой первый язык был ассемблер.