[fpc-pascal] Implementing a true Singleton - Can we decrease the	visibility of a method?
    Graeme Geldenhuys 
    graemeg.lists at gmail.com
       
    Fri Dec  8 10:55:02 CET 2006
    
    
  
On 12/8/06, Vincent Snijders <vsnijders at quicknet.nl> wrote:
> I think the solution is to create a public constructor which throws an
> NotImplemented exception or something like that.
Ok, that works, or at least stops a developer from trying to create a
instance directly.  In the exception message, I mention the correct
function they should have used.
> Note: instead of making function GetSingleton : TSingleton; a global function you
> could make it class function GetInstance too.
Yes I know, thanks. But I prefer to use the function, as it is less
typing, especially when the class name is lengthy.  I also normally
prefix it with a 'g' to show it is a global singleton function.
gLog
    vs
TLogToFile.GetSingleton
When you use singletons a lot (as I do), less typing is better.  :)
PS:
  I still don't know why we can't decrease visibility in Free Pascal.
Is there some internal language design that prevents it?
-- 
Graeme Geldenhuys
There's no place like S34° 03.168'  E018° 49.342'
    
    
More information about the fpc-pascal
mailing list