On 06 Apr 2009, at 03:37, Richard Ward wrote:
Where/why would one use a typed constant vs. a variable. i.e.
const
myConst : double = 2.0*Pi;
var
myVar : double = 2.0*Pi;
It seems to me the typed constant is superfluous and can potentially
lead to bugs.
Typed constants predate the existence of initialized variables.
Furthermore,
a) typed constants are initialized once (when the program starts), and
if changed keep their value until explicitly changed again (even if
they are declared locally in a procedure/function, and over multiple
independent invocations of such routines)
b) conversely, initialized variables are initialized every time their
scope is activated (or whatever the proper term for that is: once in
case they are declared in a program/unit scope, and every time a
function/procedure is entered if they are declared locally in a routine)
c) typed constants can be made read-only by using the {$j-} switch
Jonas
_______________________________________________
fpc-pascal maillist - fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal