Почитал я тут дискуссию по поводу "Свойств" на С++ и вот что скажу — для С++ затея плохо реализуемая.
Простой пример: что я получу указав "свойство" при вызове функции требующей ссылку? В С++ ссылки используются довольно часто. А в случае "свойства" какое значение должна принимать ссылка? Очевидно: ссылка не переменную не подходит, теряется "удобства" свойства, А ссылка на функцию set/get, это совсем не то что ожидается.
Конечно можно ругаться что ожидается lvalue, но тогда смысл всей этой дребедени? Удобства оно не прибавит, а вот путаницы... более чем.