In Objective-C, my understanding is that the directive @\"foo\" defines a constant NSString. If I use @\"foo\" in multiple places, the same immutable NSString object is referenc
You should make the static variable const.
const
One difference between static variable and a macro is that macros don't play well with debuggers. Macros also aren't type-safe.
Much of the static-var-vs-macro advice for C and C++ applies to Obj-C.