Folks; To Alexander: On the suggestion of using .m and .h files:
If I use a single #include somewhere as shown below then I can within any method use extern NSString *gLeftBracket this allows other programmers to see immediately that it is defined elsewhere and I need not burden the entire class with the overhead #import the entire set of these common strings. It seems your approach require that I expose a given class to the entirety of the strings declared in the .m file. I believe my solution allows a more fine grained usage of these strings…. Please enlighten me if I am incorrect! To Fritz: Thank-you for opening my eyes on this! I had gotten it in my head that 'const' could not be used with objects!! This is very useful to me! Any thoughts on why the location of the single #include is so finicky? Steve On Mar 14, 2010, at 6:45 AM, Alexander Spohr wrote: > .txt looks wrong. > Why not create .h and .m and import the .h? > Usually you #import, not #include in ObjC. > > .h > extern NSString *gLeftBracket; > > .m > NSString *gLeftBracket =@"<"; > > atze > > > Am 14.03.2010 um 06:47 schrieb Steve Cronin: > >> Folks; >> >> I have a dozen or so strings that I use over and over in various classes. >> So here's what I've done >> >> I have a CommonStrings.txt file added to the project. It looks like this: >> NSString *gLeftBracket =@"<"; >> NSString *gRightBracket =@">"; >> >> If I #include this file somewhere in the project then I can use 'extern' in >> the classes/methods where I need one of these strings. >> benefits: >> one place for definition >> type-ahead works - more efficient code construction >> costs: >> global-ness violates object-oriented principles >> committed global overhead for entire project that doesn't benefit every >> class >> however there are only ~20 of these >> there is no inherent 'read-only' support (which is what I would prefer) >> >> On the whole I'm inclined to accept the costs for the benefits! >> >> Is there a better way to achieve the goal in ObjC2? >> >> But here's my real question: >> It appears that I cannot put the one and only #include CommonStrings.txt >> just anywhere in the project. >> Some locations work fine others result in a 'CommonStrings.tx.' - no such >> file error. >> I'm just cutting and pasting the #include statement - so I'm not munging the >> statement. >> I cannot see any rhyme or reason on where it works and where it doesn't… >> Can someone clarify this for me? >> Kochan ObjC2 p209 clearly states, "…variable must be defined someplace among >> your source files…" >> >> Thanks for your time, >> Steve_______________________________________________ >> >> Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) >> >> Please do not post admin requests or moderator comments to the list. >> Contact the moderators at cocoa-dev-admins(at)lists.apple.com >> >> Help/Unsubscribe/Update your Subscription: >> http://lists.apple.com/mailman/options/cocoa-dev/atze%40freeport.de >> >> This email sent to a...@freeport.de > _______________________________________________ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com