[fpc-pascal]class variable

Anton Tichawa anton.tichawa at chello.at
Fri Apr 4 17:38:04 CEST 2003


On Friday 04 April 2003 07:48, you wrote:
> > Hello!
> >
> >>   Can any tell me if there's "Class Variable" in free pascal like in
> >> java?
> >>   I mean, in java, you can declare a class memeber to be "static", all
> >> instance of this class share the same variable memory. Such a member can
> >> be
> >> accessed through class name without any instantiation.
> >>   Does free pascal will add such a feature in the future?
> >
> > AFAIK, class variables are not supported yet, nor are class properties.
> > But
> > it's possible to use class methods, which in turn access a global
> > variable.
>
> Sorry that is wrong, static class members are supported, you need to
> enable the static keyword using -St
>
> I don't know what you mean with class properties.

Sorry for my misinfo, but I didn't find anything about class variables in the 
docs (1.06), and I tried, in vain, to compile programs with class variables. 
I'm happy to learn that -St allows using class variables. It's a pity, 
though, that different keywords have to be used for class variables and class 
methods.

By class properties, I mean properties that only access class members (class 
variables and class methods), and are accessible with the syntax:

<classtype>.<propertyname>.

When trying class methods, I found that the executable behaves strange: 
Invoking a class method with

<classtype>.<method>

works fine. But, invoking the class method with

<classvar>.<method>

is accepted by the compiler, but results in an exception when <classvar> is 
nil. Is that OK?

thanks,

anton tichawa.

----------

"Adas Methode war, wie sich zeigen wird, Tagträume in offenbar korrekte 
Berechnungen einzuweben."

Doris Langley Moore: Ada, Countess of Lovelace (London 1977).

----------

Ing. Anton Tichawa
Volkertstrasse 19 / 20
A-1020 Wien
phone: +43 1 218 97 59
mobil: +43 664 52 07 907; currently n/a
email: anton.tichawa at chello.at

----------



More information about the fpc-pascal mailing list