[fpc-devel] procedure Types

Amir Aavani Aavani at iust.ac.ir
Mon Mar 13 11:08:01 CET 2006


Any idea to call:
  BeginThread (@MyObject.F1, Pointer (S))

Michael Van Canneyt wrote:

>On Sat, 4 Mar 2006, Amir Aavani wrote:
>
>  
>
>>I have problem with procedure Types.
>>Look at the following code:
>>
>>TProcedure= procedure (S: String);
>>TTest= class
>>MyF: TProcedure;
>>procedure F1 (S: String);
>>procedure F2 (S: String);
>>....
>>...
>>end;
>>
>>TTest.constructor ;
>>begin
>> MyF:= @F1;
>>end;
>>
>>it says it can't cast "Procedure (S: String); Object" to TProcedure. The
>>problem is clear but I don't know
>>(can't find) any solution to define TProcedure as a procedure of a class which
>>accepts one argument.
>>    
>>
>
>Try the following (note the 'of object' in the declaration):
>
>Type
>  TMyStringProc = procedure (S : String) of object;
>
>and then
>x
>  MyF : TMyStringProc;
>
>This is documented.
>
>Michael.
>_______________________________________________
>fpc-devel maillist  -  fpc-devel at lists.freepascal.org
>http://lists.freepascal.org/mailman/listinfo/fpc-devel
>  
>





More information about the fpc-devel mailing list