Skip to Main Content
Cocoa Programming for OS X: The Big Nerd Ranch Guide
book

Cocoa Programming for OS X: The Big Nerd Ranch Guide

by Aaron Hillegass, Adam Preble, Nate Chandler
April 2015
Intermediate to advanced content levelIntermediate to advanced
556 pages
17h 47m
English
Big Nerd Ranch Guides
Content preview from Cocoa Programming for OS X: The Big Nerd Ranch Guide

Reference and Value Types

Structures and classes are far more alike in Swift than they are in most languages. However, there is one major difference in how they operate: classes are reference types; structures, enums, and tuples are value types.

What does it mean to be a value type? For one thing, a value type is always treated as a single value, even if it is composed of several individual values via its properties.

In practical terms, this means that when a value type is assigned or passed as a parameter, a copy is made. The following code demonstrates the effect with the Vector structure:

var vector0 = Vector(x: 0, y: 0) vector0 = {x 0, y 0} var vector1 = vector0 vector0 = {x 0, y 0}, vector1 = {x 0, y 0} vector0.x = 1 ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Cocoa and Objective-C: Up and Running

Cocoa and Objective-C: Up and Running

Scott Stevenson
Learning Cocoa with Objective-C, 4th Edition

Learning Cocoa with Objective-C, 4th Edition

Paris Buttfield-Addison, Jonathon Manning, Tim Nugent

Publisher Resources

ISBN: 9780134077130Purchase book