strict - 絎������с�壔�ŝ��罕���������狗�������� Perl �����í�違��
use strict;
use strict "vars";
use strict "refs";
use strict "subs";
use strict;
no strict "vars";
��ゃ�潟����若����ŝ�鴻�����筝������ŝ����翫����壔����ñ���櫝�純�ɱ����⓾�勐�句�������������障����� (��������壩�����絎������ɱ��篏���≪�若����с����������˨�吾�ャ�≪�˨����㏍�違�í����潟�違� ��������˨�壠ウ��������������翫�������������障�����) 篁���勉�����������"subs"���"vars"���"refs" ��� 3 ��ゃ�勐�句�������������������⓾����障�����
strict refs
-
��激�潟����ŝ����壔�ŝ����<�㋘�潟�鴻��篏帥�����������������絎�茵���������í�若�˨�ŝ����障����� (perlref ���荀���⓾��������������)
use strict 'refs'; $ref = \$foo; print $$ref; # ok $ref = "foo"; print $$ref; # ��í�潟�帥�ゃ�������í��; ��勖侊��� ok $file = "STDOUT"; print $file "Hi!"; # �����í��; 羈����: $file ��勐����˨�潟�潟�������ŝ��
�����勉�˨�若�˨�˨�� 1 ��ゃ�勌��紊������������障��:
$bar = \&{'foo'}; &$bar;
筝�荐���勉����勉�虁┗絎鴻�������障��; ���������
goto &$AUTOLOAD
��壔����勐�句��筝���с����������障����� strict vars
-
our
���use vars
���my()
��у㐂荐����������紊���違��絎������˩信蕋障�������� 紊���遺札紊���˨�≪�壔�祉�鴻�������������˨�潟�潟����ゃ����������í�若����冴����障����� 紊���違����ʋ俠�����⓾����障����馹����緇勐����ɱ�������鴻�潟�若����勐�馹������������������� local() 紊���違�������с�壠�������с�壔�������障�������� "my" in perlfunc ��� "local" in perlfunc ���荀���⓾��������������use strict 'vars'; $X::foo = 1; # ok, 絎������˩信蕋障�������⓾����障�� my $foo = 10; # ok, my() 紊��� local $foo = 9; # �����
package Cinna; our $bar; # ��������宴�若�後����у㐂荐���������� $bar $bar = 'HgS'; # ok, �����í�違����с�違�㏍�若����˨��絎h�����������
local() ��壔��絎������ŭ信蕋丞�<����˨�違�㏍�若����˨�ɱ��������茹⓾�c�⓾����障�������� ��潟�潟����ゃ����������í�若����冴����障�����
sort() ��˨����c�☎�劫�ユ�宴�������������������������宴�� $a ��� $b ��壔����勉����с����壔� ��ñ��紊���˨�ŝ�c�⓾����障�����
strict subs
-
荅ñ����ʋ����ï�����胼�罩≪�������泣����˨�若����割札紊���勤8��勤����ュ�����篏帥����������������������� ���������鐚���潟�㏍�潟�勉�ŝ��鐚����膣���ʃ����ュ�����筝㊥�㋚磁��勌賢
=>
��激�潟����˨� 綏☗�眼�с�ŝ����翫����˨�潟�潟����ゃ����������í�若����冴����障�����use strict 'subs'; $SIG{PIPE} = Plumber; # ����� $SIG{PIPE} = "Plumber"; # ��馹���ŝ��: ��壔�í�若��������������絖���壠幻��� ok $SIG{PIPE} = \&Plumber; # 絅純�障�������号��
"Pragmatic Modules" in perlmodlib ���荀���⓾��������������
Perl 5.6.1 ��с�� strict 'subs'
��壔��鐚�=>
��勐�����筝㊥�㋚磁��勌賢��с�卡�� ��������激�ャ�勉�㏍�若�勉�������⓾����壔�í�若����������������ŝ����̩��Foo::Bar
��勉�������ɳ�� 茲������勤����ュ�����篏帥�������������˨����⓾����障�c�⓾����障��; �����勉�������奝����������с�����; ��������壔�������ゃ�с����ŝ����í�����絖������с�����
Perl 5.8.1 ��������� strict ��壔�������������勐�句��篋������˨�ゃ����☗ウ��若�с��: �����������ャ�������⓾����ŝ����句��篋�������篏帥����������ŝ����違��strict �����í�違����壔�� 篁ヤ����勉�������ɱ�阪�������宴�˩賢��㏍����障�����
Unknown 'strict' tag(s) '...'
�����若�吾�с�� 1.04 (Perl 5.10) ���������紊ф��絖�絨����絖���勐�阪�ャ�勉�ŝ�� �����<�ゃ�˨�激�鴻�������с�勖����������� "Strict" ��勛�������帥�������������˨��strict �� "strict" ��������☖戎��������⓾�����������罎�荐若����障�����