程嶏清单14-24.txt

来自「< linux网络编程工具>>配套源码」· 文本 代码 · 共 30 行

TXT
30
字号
package StoreItem;
my $_sales_tax = 8.5;  # 8.5% added to all components's post rebate price
sub new {
    my ($pkg, $name, $price, $rebate) = @_;
    bless {
       # Attributes are marked with a leading underscore, to signify that
       # they are private (just a convention)
        _name => $name, _price => $price, _rebate => $rebate
    }, $pkg;
}
# Accessor methods
sub sales_tax {
shift; @_ ? $_sales_tax = shift : $_sales_tax
}
sub name {
my $obj = shift; @_ ? $obj->{_name} = shift : $obj->{_name}
}
sub rebate {
my $obj = shift; @_ ? $obj->{_rebate} = shift 
                                : $obj->{_rebate}
}
sub price {
my $obj = shift; @_ ? $obj->{_price} = shift
                                : $obj->{_price} - $obj->_rebate}
}
sub net_price {
    my $obj = shift;
    return $obj->price * (1 + $obj->sales_tax / 100);
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?