2013-07-13 5 views
5

Was bedeutet es, wenn Sie eine @ vor einer Ganzzahl in Objective-C setzen? Wie so:Was bedeutet es, wenn Sie ein @ vor einer Ganzzahl in Objective-C setzen?

@4 
+0

Es macht es zu einem '' 'NSNumber'''. – gtmtg

+2

Siehe "NSNumber Literals" in http://clang.llvm.org/docs/ObjectiveCLiterals.html. –

+1

Beachten Sie, dass dies ein relativ neues Compiler-Feature ist, so dass es in vielen Büchern und anderen Referenzen nicht besprochen wird. Es geht mit der Notation von @ @ (a, b, c) für ein NSArray und einige andere Verbesserungen, wie in Martins Link gezeigt. –

Antwort

7

Es ist die NSNumber wörtlich zu nehmen. Eine Abkürzung dafür:

[NSNumber numberWithInt:4]; 
+0

Kennen Sie das Äquivalent in swift 2.3 und swift 3.0? –

+1

Sie sollten wahrscheinlich die numerischen Swift-Typen verwenden, wie Int, Float usw. Wenn Sie NSNumber wirklich in Swift verwenden müssen, können Sie Folgendes tun: 'var num = NSNumber (value: 4)' – DrummerB