On Thursday, 28 February 2013 at 02:56:40 UTC, deadalnix wrote:
Additionally, I don't think this is really a problem as it is asking to break the abstraction, plain and simple. If you need a function pointer, then it is likely that you shouldn't be using a property in the first place.

+1. Properties (from what I've seen) are suppose to be effectively indistinguishable between a field. If you're taking the address of a property hoping to get the function address, this is a clear violation of that.

For instance, if I wrote some code like this:

...
auto myFun = &b.front;
...

And I expected to get a function pointer from that, it would be a clear violation of what ".front" means (or, is intended to mean...) and it would break on many ranges because many of them are implemented s.t. front is actually a field.

Reply via email to