Jump to content

SomFree: Difference between revisions

From EDM2
Created page with "{{DISPLAYTITLE:somFree (SOMObject)}} '''Note:''' Some further explanation is needed to don't confuse somFree function with this somFree SOMObject method. This method re..."
 
No edit summary
Line 54: Line 54:
* somDestruct  
* somDestruct  


[[Category:SOM Kernel]]
[[Category:SOMObject]]

Revision as of 03:43, 13 October 2017


Note: Some further explanation is needed to don't confuse somFree function with this somFree SOMObject method.

This method releases the storage used by an object. Intended for use by object clients. Not generally overridden.

For backward compatibility, this method does not take an Environment parameter.

Original Class
SOMObject

Syntax

void somFree (SOMObject receiver)

Parameters

receiver (SOMObject)
A pointer to the object to be freed.

Return Code

rc

Remarks

The somFree method releases the storage containing the receiver object by calling the method somDeallocate. No future references should be made to the receiver once this is done. The somFree method calls somDestruct to allow storage pointed to by the object to be freed.

The somFree method should not be called on objects created by somRenew, thus the method is normally only used by code that also created the object.

Note: SOM also supplies a macro, SOMFree, which is used to free a block of memory. This macro should not be used on objects.

Example Code

#include <animal.h>

void main()
{
   Animal myAnimal;
   /*
    * Create an object.
    */
   myAnimal = AnimalNew();

   /* ... */

   /* Free it when finished. */
   _somFree(myAnimal);
}

Related

Functions

  • SOMFree

Methods

  • somNew
  • somNewNoInit
  • somDestruct