千家信息网

Perl 变量命名规则有哪些

发表于:2024-11-22 作者:千家信息网编辑
千家信息网最后更新 2024年11月22日,小编给大家分享一下Perl 变量命名规则有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!perl中变量命名规则变量命名
千家信息网最后更新 2024年11月22日Perl 变量命名规则有哪些

小编给大家分享一下Perl 变量命名规则有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

perl中变量命名规则

变量命名规则:

1.不要与perl中的内置变量名相同如:%ARGV,$a,$b $_ 等等

2.perl中的变量名严格区分大小写

3.建议使用大字母,小写字母,数字,下划线组合命名变量名。其他特殊字符。


变量命名示例

变量名采用 形容词_名词 的格式命名,多个单词之间用下划线分隔,比如

$next_record$total_score$root_node

对于查表的数组或者哈希,采用 xxx_of, xxx_for的命名方式,也就是在末端加上介词,比如。

my %title_of;my %ISBN_for;my @sales_from;

这种写法会使后面的代码可读性极好。

while (my $month = prompt -menu => $MONTH_NAMES) {for my $book (@catalog) {print "$ISBN_for{$book} $title_of{$book}: $sales_from[$month]\n";    }}

对于子程序和方法而言,构成名称的文法规则如下

sub get_recordsub get_record_forsub eat_cookiesub eat_previous_cookiesub build_profilesub build_execution_profilesub build_execution_profile_using

如此一来,后面的代码几乎不用加注释。

@config_options = get_record_for($next_client);for my $option (@config_options) {    build_execution_profile_using($next_client, $option);}

布尔值命名

一般以所测试的属性或断言作为命名依据,这也会使条件表达式读起来很自然,通常来讲,这些名称大多以is_或has_开头,当然也有例外,比如。

sub is_valid;sub metadata_available_for;sub has_end_tag;my $loading_finished;my $has_found_bad_record;

看看使用这种规则的代码可读性吧,如下,几乎是自注释的。

if (is_valid($next_record) && !$loading_finished) {    METADATA:while (metadata_available_for($next_record)) {        pushu @metadata, get_metadata_for($next_record);last METADATA if has_end_tag($next_record);    }}else {$has_found_bad_record = 1;}

引用变量命名

在引用变量的后面加上_ref,可以防止把引用变量当作普通变量使用。

数组和哈希

哈希通常以单数命名,后跟介词,前面已经讲过,而数组处则通常以复数命名。

下划线

名称的单词之间以下划线来分隔。

大小写

子程序,方法,变量,加标签的自变量都使用小写。

包和类名(IO::Controller)使用混合的大小写。

常量则使用大写($SRC, $ARG)。

实用子程序

在编写类或模块时,仅供内部使用而不导出的子程序,应该以下划线开头

以上是"Perl 变量命名规则有哪些"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

0