> On Oct 5, 2015, at 6:59 PM, Rick Mann <[email protected]> wrote:
>
> Huh. I continue to be bothered by the ambiguity/variability of "let"*. Is the
> reference immutable or the thing it points to?
A variable (var or let) doesn’t “point to” a struct. It _contains_ the struct.
I.e. it’s a value, not a reference.
It’s just like in C or C++, really. Given a struct Foo,
const Foo x; // a value: x is immutable; you can’t change its fields
Foo* const x; // a reference: the variable x can’t be changed, but the
Foo it points to can
The thing Swift doesn’t have that C/C++ do is
const Foo *x; // the Foo can’t be changed through this reference
(though the value of x can)
The reason this was left out is probably that it doesn’t fit at all with
Objective-C and the Cocoa frameworks, which have no concept of a constant
reference to an NSObject.
—Jens
_______________________________________________
Cocoa-dev mailing list ([email protected])
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com
This email sent to [email protected]