in reply to how to declare the hash
That's because you're trying to assign a single value to a hash. (A single value being an odd number (1) of values.) Hashes are initialized as an ordered list of key/value pairs, like this:
my %flag = ( name_of_the_flag => 0, another_flag => 1, third_one => 0, ); # Later... print "another_flag is set\n" if $flag{another_flag};
If you do indeed just want a single value called "flag", use a scalar:
my $flag = 0; print "\$flag is set\n" if $flag;
If neither of those is what you're looking for, you'll have to go into a bit more detail on what it is you're trying to accomplish (rather than only telling us how you're trying to accomplish it, as you have done.)
But see also, Perl variable types.
|
|---|