The somNew and somNewNoInit methods create a new instance of the receiving class. Space is allocated as necessary to hold the new object.
When either of these methods is applied to a class, the result is a new instance of that class. If the receiver class is SOMClass or a class derived from SOMClass, the new object will be a class object; otherwise, the new object will not be a class object. The somNew method invokes the somDefaultInit method on the newly created object. The somNewNoInit method does not.
Either method can fail to allocate enough memory to hold a new object and, if so, NULL is returned.
The SOM Compiler generates convenience macros for creating instances of each class, for use by C and C++ programmers. These macros can be used in place of this method.