История изменений
Исправление Kuzy, (текущая версия) :
Это не проперти. Они не решают проблему с кучей get/set-функций.
Зато можно писать:
Я не спорю, это может понадобится, но это вообще не замена get/set-функциям.
Если их использовать как в твоем примере, то нужно вообще запретить неявное приведение, что бы случайно не скопировать эту фигню и менять именно foo.p и получать нужные сайд-эффекты от приведение к базовому типу. Но это совсем не проперти.
Это у тебя что-то вроде эмуляции ссылок на темплейтах, с опциональными функциями на «разыменовании» и присвоении.
Исходная версия Kuzy, :
Это не проперти. Они не решают проблему с кучей get/set-функций.
Зато можно писать:
Я не спорю, это может понадобится, но это вообще не замена get/set-функциям.
Если их использовать как в твоем примере, то нужно вообще запретить неявное приведение, что бы случайно не скопировать эту фигню и менять именно foo.p и получать нужные сайд-эффекты от приведение к базовому типу. Но это совсем не проперти.