@property

Alex Parrill via Digitalmars-d-learn digitalmars-d-learn at puremagic.com
Mon Nov 9 14:06:20 PST 2015


On Monday, 9 November 2015 at 21:56:22 UTC, Fyodor Ustinov wrote:
> Hi!
>
> Why do need "@proprety" if everything works without it?
>
> WBR,
>     Fyodor.

Check out the following code:


	struct Test {
		int foo() {
			return 2;
		}
		int bar() @property {
			return 2;
		}
	}

	pragma(msg, typeof(Test.foo)); // Prints int(); i.e. a 
zero-argument function that returns an int
	pragma(msg, typeof(Test.bar)); // Prints int; i.e. a plain int

AFAIK when @property was introduced, it was expected that after a 
deprecation period, calling non-property functions without 
parenthesis would be invalid, but I don't think that panned out. 
It's still good for documentation.


More information about the Digitalmars-d-learn mailing list