Re: [fpc-pascal] Virtual Constants
On Fri, Mar 1, 2013 at 5:31 PM, Daniel Gaspary dgasp...@gmail.com wrote: Is possible to have a Class constant with different values in class descendants ? Afaik no, but you can override class virtual methods which might give you the correct value: TA = class protected class function value: integer; virtual; abstract; public class function getvalue: integer; end; TB = class(TA) protected class function value: integer; override; end; TC = class(TA) protected class function value: integer; override; end; Joao Morais ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Re: [fpc-pascal] Virtual Constants
On Sun, Mar 3, 2013 at 11:13 AM, Joao Morais jcmorai...@gmail.com wrote: Afaik no, but you can override class virtual methods which might give you the correct value: Exactly what I was trying to avoid. :) ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Re: [fpc-pascal] Virtual Constants
Am 01.03.2013 21:31, schrieb Daniel Gaspary: The idea is strange. But here it is: Is possible to have a Class constant with different values in class descendants ? Would be something like that: TA = class const c1: integer; virtual; class function GetC1: integer; //returns c1 end; TB = class(TA) const c1: integer = 1; end; TC = class(TA) const c1: integer = 2; end; ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal currently I use a dirty hack to achieve something like this: I have a fixed naming scheme for the classname and encode the virtual const in the classname. ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal
[fpc-pascal] Virtual Constants
The idea is strange. But here it is: Is possible to have a Class constant with different values in class descendants ? Would be something like that: TA = class const c1: integer; virtual; class function GetC1: integer; //returns c1 end; TB = class(TA) const c1: integer = 1; end; TC = class(TA) const c1: integer = 2; end; ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Re: [fpc-pascal] Virtual Constants
On Fri, 1 Mar 2013, Daniel Gaspary wrote: The idea is strange. But here it is: Is possible to have a Class constant with different values in class descendants ? Would be something like that: TA = class const c1: integer; virtual; class function GetC1: integer; //returns c1 end; TB = class(TA) const c1: integer = 1; end; TC = class(TA) const c1: integer = 2; end; Funny coincidence, I was looking for the same thing today :) Michael. ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal