Re: question on docs

ppadilcdx--- via fpc-pascal <[email protected]>
Newsgroups gmane.comp.compilers.free-pascal.general
Message-ID <[email protected]>
Ah, Ok thanks!

> On Oct 20, 2024, at 3:32 PM, Martin Frb via fpc-pascal <[email protected]> wrote:
> 
> The compare function is declared right inside the class
> 
>   { TFPGList }
> 
>   generic TFPGList<T> = class(TFPSList)
>   private
>     type
>       TCompareFunc = function(const Item1, Item2: T): Integer;
> 
> 
> "T" is from the generic, so if you specialized with string, then T is string.
> 
> It is a function, not a method (i.e. not part of a class)
> 
> 
> On 21/10/2024 00:17, ppadilcdx--- via fpc-pascal wrote:
>> Just tried to compile a short program with that definition of compare: TCompareFunc, and that is the wrong type for TFPGList<String> in my program (yes there is a better class for strings but I just wanted a quick example program to compile). FPC error message says it wants:
>> function(const ShortString;const ShortString):LongInt,
>> so only two non-pointer input parameters. Must be another definition somewhere.
>>> type TFPSListCompareFunc = function(
>>> Key1: Pointer;
>>> Key2: Pointer
>>> ):Integer of object;
>>> 
>>> Two questions.
>>> 1) Should TCompareFunc in TFPGList.Sort be one of the above types, or is there another definition somewhere?
>>> 2) What is an “Integer of object” in TFPSListCompareFunc? (I expect it to be a typo but then I’m fairly new to free pascal so I might have missed the memo.)
>>> 
>>> 
>>> 
> 
> Of object belongs to the function (the entire function declaration before), not just the "integer".
> So that function must be a method of a class.
> _______________________________________________
> fpc-pascal maillist  -  [email protected]
> https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal

_______________________________________________
fpc-pascal maillist  -  [email protected]
https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.