Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!samsung!uakari.primate.wisc.edu!unmvax!ariel.unm.edu!nmsu!opus!trodgers From: trodgers@nmsu.edu (Thomas Rodgers) Newsgroups: comp.lang.pascal Subject: Re: HELP WITH TURBO PASCAL 5.5 OOP!!! Please! Message-ID: Date: 16 Oct 90 21:59:49 GMT References: <2994@yang.earlham.edu> Sender: news@NMSU.Edu Organization: NMSU Computer Science Lines: 10 In-reply-to: jeffb@yang.earlham.edu's message of 14 Oct 90 22:32:12 GMT The constructor is required because virtual methods do not know precisely which instance of the method is to be called until the constructor code initializes a virtual method table within the object, there is a discussion of the VMT in the reference section of the OOP guide. Also only a constructor can be specified in dynamic allocation of an object (I think) (ie. new(Some_Obj,Init(X,Y,BLAH)). The same holds for the destructor, so that when you deallocate an object, dispose(Some_Obj,Done) performs any cleanup the object needs before it is disposed of.