nice, that was new to me :)
2011/7/27 Sven Barth <pascaldra...@googlemail.com>: > On 27.07.2011 12:22, Dimitri Smits wrote: >> >> don't have a Delphi in reach for the moment to verify, but you could do >> that to a const (if you enable the assignable constants setting) >> >> procedure SomeProc; >> const >> someconst: Integer = 22; >> begin >> //blabla >> someconst := 42; >> //yadda yadda >> end; >> > > In this case "someconst" will keep the assigned value during different > functions calls. > > For example: > > === source begin === > > procedure SomeProc; > const > someconst: Integer = 21; > begin > if someconst = 42 then > Writeln('The answer') > else begin > Writeln('Not the answer'); > someconst := 42; > end; > end; > > begin > SomeProc; > SomeProc; > end; > > === source end === > > will print: > > === output begin === > > Not the answer > The answer > > === output end === > > This was considered as the equivalent of a local static variable. > > In case of "var" the definitions are normal variables and semantically > equivalent to an initialization of the variable at the beginning of the > function. > > Regards, > Sven > >> >> ----- "Sven Barth"<pascaldra...@googlemail.com> schreef: >> >>> Well... seems like you didn't notice this feature yet :D >>> >>> I'm talking about this: >>> >>> === source begin === >>> >>> procedure SomeProc; >>> var >>> somevar: Integer = 42; >>> begin >>> >>> end; >>> >>> === source end === >>> >>> This works in FPC, but doesn't in Delphi ;) >>> >>> Regards >>> Sven >>> >>> Am 26.07.2011 21:27, schrieb Jorge Aldo G. de F. Junior: >>>> >>>> I dont like to take local variable initialization for granted. >>>> >>>> Even if the manual says that its guaranteed that a local variable >>> >>> will >>>> >>>> start with 0, >>>> i prefer to initialize everything to a known value myself. >>>> >>>> An aditional >>>> >>>> Move $varaddress, 00 >>>> >>>> at startup wont slow things down noticeably when your pc is running >>> >>> at 2ghz... >>>> >>>> This unit needs to take care of big endian vs. low endian (maybe a >>> >>> $define ?) >>>> >>>> When i wrote that code i did not pay attention to this... >>>> >>>> Anything more complex (like interacting with DHCP server) would be >>> >>> too >>>> >>>> complex and probably dependent on external units (like synapse x >>> >>> lnet >>>> >>>> etc). Some people might prefer to use other library instead of the >>>> default choosen one, etc... >>>> >>>> 2011/7/26 Sven Barth<pascaldra...@googlemail.com>: >>>>> >>>>> On 26.07.2011 01:23, Paul Nicholls wrote: >>>>>> >>>>>> "Jorge Aldo G. de F. Junior" >>>>>> <jagf...@gmail.com> wrote in message >>>>>> >>> >>> news:CAAHHabS9aUe9gwyNjkve-XVXsRyf2UPsArh6=fsdpgokugj...@mail.gmail.com... >>>>>>> >>>>>>> Some time ago someone asked for a library able to do network >>>>>>> calculations. >>>>>>> >>>>>>> Here is something that might evolve into such library : >>>>>>> >>>>>> <SNIP> >>>>>>> >>>>>>> Function NetMaskToHostMask(NetMask : TNetworkIP): TNetworkIP; >>>>>>> Begin >>>>>>> Result.Mode := False; >>>>>>> NetMask.Mode := False; >>>>>>> Result.IP := NetMask.IP Xor %11111111111111111111111111111111; >>>>>>> End; >>>>>>> >>>>>> <SNIP> >>>>>> >>>>>> I didn't know that freepascal handled binary formatted numbers?!? >>>>>> >>>>>> %11111111111111111111111111111111 >>>>> >>>>> There are often new things one can learn about what FPC supports ;) >>> >>> (though >>>>> >>>>> binary numbers are already old for me ^^) >>>>> >>>>> The most recent finding (at least for me) was the abbility to >>> >>> initialize >>>>> >>>>> local variables. >>>>> >>>>> Regards, >>>>> Sven >>>>> >>>>> _______________________________________________ >>>>> fpc-pascal maillist - fpc-pascal@lists.freepascal.org >>>>> http://lists.freepascal.org/mailman/listinfo/fpc-pascal >>>>> >>>> _______________________________________________ >>>> fpc-pascal maillist - fpc-pascal@lists.freepascal.org >>>> http://lists.freepascal.org/mailman/listinfo/fpc-pascal >>> >>> _______________________________________________ >>> fpc-pascal maillist - fpc-pascal@lists.freepascal.org >>> http://lists.freepascal.org/mailman/listinfo/fpc-pascal >> >> _______________________________________________ >> fpc-pascal maillist - fpc-pascal@lists.freepascal.org >> http://lists.freepascal.org/mailman/listinfo/fpc-pascal > > _______________________________________________ > fpc-pascal maillist - fpc-pascal@lists.freepascal.org > http://lists.freepascal.org/mailman/listinfo/fpc-pascal > _______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal