Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Swift vs. +[NSValue valueWithNonretainedObject:]

In Objective-C, I might use +[NSValue valueWithNonretainedObject:] to keep a unique ID of an object, where I don't wish to retain the object itself. Seems like that's deprecated for Swift.

How to do in Swift?

like image 960
Clay Bridges Avatar asked Jan 28 '26 05:01

Clay Bridges


2 Answers

It's still there. It's just been adjusted to be one of NSValue's initializers:

let anObject = "Hello!"
let value = NSValue(nonretainedObject: anObject)
like image 86
Mick MacCallum Avatar answered Jan 29 '26 20:01

Mick MacCallum


This works:

let foo: NSString = "hello"
let fooval: NSValue = NSValue(nonretainedObject: foo)

fooval.description // evaluates to "<5040d191 b87f0000>", address of `foo`
like image 31
hamstergene Avatar answered Jan 29 '26 20:01

hamstergene



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!