By John Holdsworth
Open the Mac App Store to buy and download apps.
Objective-C++ enriches the syntax available to Objective-C coders when using foundation classes by using simple C++ wrapper objects that support string concatenation and access to foundation container members using subscript notation. This reduces the verbosity of Objective-C code allowing you to focus on the problem while adding features such as sparse arrays, regular expressions and complex auto-vivifying recursive data structures.
At it's simplest, to use Objective-C++ use the application to convert your class files in a project to use the Objective-C++ compiler included in Xcode and then patch your project's pre-compilation header (.pch file) to include the header file in this application bundle. Thereafter, where you would use NSString, NSArray and NSDictionary in any class, use the C++ wrappers OOString, OOArray and OODictionary to take advantage of the operators defined as inline functions in the preprocessor header.
Extensively tested in mutiple projects over the last few years, Objective-C++ is compatible with ARC and can be used as an efficient alternative for maintaining reference counts if you haven't made the transition.