Новые литералы Objective-c в 4.4

Я могу написать @42, что создаст NSNumber со значением int 42. Могу ли я сделать это с переменной, такой как @someIntVar? Очевидно, я попробовал это, и это не работает (что отстой, потому что тогда мне нужно пройти через [NSNumber numberWithInt:someIntVar]). Возможно ли это с немного другим синтаксисом?


person 0xSina    schedule 25.08.2012    source источник


Ответы (1)


Я настоятельно рекомендую вам прочитать официальную документацию по clang по этому вопросу: http://clang.llvm.org/docs/ObjectiveCLiterals.html

Но, чтобы заключить переменную или любое выражение, вы можете использовать круглые скобки:

 id num = @(someIntVar);
person Richard J. Ross III    schedule 25.08.2012
comment
Просто чтобы добавить к этому, вы также можете сделать это со строковыми переменными C, чтобы создать NSStrings (тот же синтаксис @(...)) - person hypercrypt; 25.08.2012